diff --git a/src/main/java/org/ntlab/nemophila/models/accounts/AccountManager.java b/src/main/java/org/ntlab/nemophila/models/accounts/AccountManager.java index 45b8dbc..1e3221f 100644 --- a/src/main/java/org/ntlab/nemophila/models/accounts/AccountManager.java +++ b/src/main/java/org/ntlab/nemophila/models/accounts/AccountManager.java @@ -20,6 +20,7 @@ } //アカウントの取得 public Account getAccount(String id){ + return accountsMap.get(id); } //新規アカウントの作成 @@ -46,6 +47,7 @@ } //アカウント消去 public void deleteAccount(String id){ + accountsMap.remove(id); } diff --git a/src/main/java/org/ntlab/nemophila/resources/accounts/AccountRest.java b/src/main/java/org/ntlab/nemophila/resources/accounts/AccountRest.java index 59e202e..13958fa 100644 --- a/src/main/java/org/ntlab/nemophila/resources/accounts/AccountRest.java +++ b/src/main/java/org/ntlab/nemophila/resources/accounts/AccountRest.java @@ -1,18 +1,81 @@ package org.ntlab.nemophila.resources.accounts; +import org.ntlab.nemophila.models.accounts.Account; +import org.ntlab.nemophila.models.accounts.AccountManager; import org.springframework.stereotype.Component; -import javax.ws.rs.GET; -import javax.ws.rs.Path; -import javax.ws.rs.PathParam; +import javax.ws.rs.*; @Component @Path("/accounts") public class AccountRest { + + //ユーザー情報の取得 @GET @Path("/{uid}") - public String getAccount(@PathParam("uid") String uid){ - return null; + public Account getAccount(@PathParam("uid") String uid){ + AccountManager am = AccountManager.getInstance(); + Account ac = am.getAccount(uid); + return ac; } + + //ユーザーの削除 + @DELETE + @Path("/{uid}") + public void deleteAccount(@PathParam("uid") String uid){ + AccountManager am = AccountManager.getInstance(); + am.deleteAccount(uid); + } + + //パスワードの変更 + @PUT + @Path("/{uid}") + public void pwChange(@PathParam("uid") String uid, @FormParam("pw") String pw){ + AccountManager am = AccountManager.getInstance(); + Account ac = am.getAccount(uid); + if (ac.getPw().equals(pw)) { + ac.setPw(pw); + } else { + System.out.println("Error : Miss match pw"); + } + } + + //名前の変更 + @PUT + @Path("/{uid}") + public void nameChange(@PathParam("uid") String uid, @FormParam("name") String name, @FormParam("token") String token){ + AccountManager am = AccountManager.getInstance(); + Account ac = am.getAccount(uid); + if (ac.getToken().equals(token)) { + ac.setName(name); + } else { + System.out.println("Error : Miss match pw"); + } + + } + + //アイコンの変更 +// @PUT +// @Path("/{uid}") +// public void nameChange(@PathParam("uid") String uid, @FormParam("name") String name, @FormParam("token") String token){ +// AccountManager am = AccountManager.getInstance(); +// Account ac = am.getAccount(uid); +// if (ac.getToken().equals(token)) { +// ac.setName(name); +// } else { +// System.out.println("Error : Miss match pw"); +// } +// +// } +// } + + //アイコンの削除 +// @DELETE +// @Path("/{uid}") +// public String removeAccount(@PathParam("uid") String uid){ +// AccountManager am = AccountManager.getInstance(); +// Account ac = am.getAccount(uid); +// return null; +// } }