diff --git a/src/main/java/cactusServer/entities/Account.java b/src/main/java/cactusServer/entities/Account.java index c46e353..b1468ea 100644 --- a/src/main/java/cactusServer/entities/Account.java +++ b/src/main/java/cactusServer/entities/Account.java @@ -1,5 +1,26 @@ package cactusServer.entities; public class Account { + private String name, pass; + public Account(String userName, String userPass) { + setName(userName); + setPass(userPass); + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public String getPass() { + return pass; + } + + public void setPass(String pass) { + this.pass = pass; + } } diff --git a/src/main/java/cactusServer/models/Accounts.java b/src/main/java/cactusServer/models/Accounts.java index 33bcb52..b15060c 100644 --- a/src/main/java/cactusServer/models/Accounts.java +++ b/src/main/java/cactusServer/models/Accounts.java @@ -1,5 +1,46 @@ package cactusServer.models; +import javax.inject.Singleton; + +import cactusServer.entities.Account; + +import java.util.HashMap; + +@Singleton public class Accounts { + private static Accounts theInstance = null; + private HashMap accounts = new HashMap<>(); + + private Accounts() { + + } + + public static Accounts getInstance() { + if (theInstance == null) { + theInstance = new Accounts(); + } + return theInstance; + } + + public Account createAcount(String userID, String userName, String userPass) { + System.out.println(userName); + + Account newAccount = new Account(userName, userPass); + accounts.put(userID, newAccount); + + System.out.println(userID); + + return newAccount; + } + + public Account getAccount(String userID) { + Account editAccount = accounts.get(userID); + return editAccount; + } + + public String deleteAccount(String userID) { + accounts.remove(userID); + return "complated remove account"; + } } diff --git a/src/main/java/cactusServer/resources/AccountsRest.java b/src/main/java/cactusServer/resources/AccountsRest.java index 1f20921..a94dc42 100644 --- a/src/main/java/cactusServer/resources/AccountsRest.java +++ b/src/main/java/cactusServer/resources/AccountsRest.java @@ -1,5 +1,39 @@ package cactusServer.resources; -public class AccountsRest { +import javax.ws.rs.*; +import javax.ws.rs.core.MediaType; +import cactusServer.entities.Account; +import cactusServer.models.Accounts; + +@Path("/AccountsRest") +public class AccountsRest { + @POST + @Path("/login") + @Produces(MediaType.APPLICATION_JSON) + public String loginAccount(@QueryParam("userID") String userID, @QueryParam("userPass") String userPass) { + return ""; + } + + @POST + @Path("/logout") + @Produces(MediaType.APPLICATION_JSON) + public String logoutAccount(@QueryParam("userID") String userID) { + return ""; + } + + @POST + @Path("/createAccount") + @Produces(MediaType.APPLICATION_JSON) + public Account create(@QueryParam("userID") String userID, @QueryParam("userName") String userName, + @QueryParam("userPass") String userPass) { + return Accounts.getInstance().createAcount(userID, userName, userPass); + } + + @GET + @Path("/getAccount") + @Produces(MediaType.APPLICATION_JSON) + public Account getAccount(@QueryParam("userID") String userID) { + return Accounts.getInstance().getAccount(userID); + } } diff --git a/src/main/java/test/app/App.java b/src/main/java/test/app/App.java new file mode 100644 index 0000000..0bd8958 --- /dev/null +++ b/src/main/java/test/app/App.java @@ -0,0 +1,12 @@ +package test.app; + +import javax.ws.rs.ApplicationPath; +import javax.ws.rs.core.Application; + +import org.glassfish.jersey.server.ResourceConfig; + +@SuppressWarnings("unused") +@ApplicationPath("/rest") +public class App extends ResourceConfig { + +} \ No newline at end of file diff --git a/src/test/java/test/app/App.java b/src/test/java/test/app/App.java deleted file mode 100644 index 0bd8958..0000000 --- a/src/test/java/test/app/App.java +++ /dev/null @@ -1,12 +0,0 @@ -package test.app; - -import javax.ws.rs.ApplicationPath; -import javax.ws.rs.core.Application; - -import org.glassfish.jersey.server.ResourceConfig; - -@SuppressWarnings("unused") -@ApplicationPath("/rest") -public class App extends ResourceConfig { - -} \ No newline at end of file