diff --git a/src/main/java/com/example/cosmos_serversb/entities/Group.java b/src/main/java/com/example/cosmos_serversb/entities/Group.java index 7b2805b..485306b 100644 --- a/src/main/java/com/example/cosmos_serversb/entities/Group.java +++ b/src/main/java/com/example/cosmos_serversb/entities/Group.java @@ -87,7 +87,6 @@ } public void addMember(String uId){ - // User user = new User(uId, uId, "http:test", "hogehoge"); User user = Users.getInstance().getUserById(uId); if(user != null) { members.add(user); diff --git a/src/main/java/com/example/cosmos_serversb/models/Groups.java b/src/main/java/com/example/cosmos_serversb/models/Groups.java index eb3a1ff..5307dba 100644 --- a/src/main/java/com/example/cosmos_serversb/models/Groups.java +++ b/src/main/java/com/example/cosmos_serversb/models/Groups.java @@ -53,12 +53,6 @@ Group testGroup = new Group(gId, uri, name, uId); Session session = SessionManager.getInstance().getSession(); session.save(testGroup); -// SessionManager.getInstance().closeSession(); -// session = SessionManager.getSession().getSession(); -// testGroup.addMember(uId); -// int n = testGroup.getMembers().size(); -// session.update(testGroup); -// SessionManager.getInstance().closeSession(); return testGroup; } @@ -90,7 +84,13 @@ } public static HashMap addMember(String gId, String uId){ - return null; + Session session = SessionManager.getInstance().getSession(); + Group editGroup = session.load(Group.class, gId);//取得できない + if(editGroup != null) { + editGroup.addMember(uId); + session.update(editGroup); + } + return null;//HashMapへの変更が必要 } public static HashMap deleteMember(String gId, String uId){ @@ -138,17 +138,6 @@ */ } - //とりあえず作成。あとでaddMember()と統合させる。 - public static void addMemberWhenCreateGroup(Group editGroup, String uId){ - Session session = SessionManager.getInstance().getSession(); -// Group editGroup = session.load(Group.class, "gId");//取得できない - if(editGroup != null) { - editGroup.addMember(uId); -// int n = testGroup.getMembers().size(); - session.update(editGroup); - } - } - public static HashMap getTestHashMap(){ return testMap; } diff --git a/src/main/java/com/example/cosmos_serversb/resources/GroupsRest.java b/src/main/java/com/example/cosmos_serversb/resources/GroupsRest.java index 31ab036..0ad7fe3 100644 --- a/src/main/java/com/example/cosmos_serversb/resources/GroupsRest.java +++ b/src/main/java/com/example/cosmos_serversb/resources/GroupsRest.java @@ -29,15 +29,14 @@ //グループの作成 SessionManager.getInstance().getSession(); ObjectMapper mapper = new ObjectMapper(); - String json = mapper.writeValueAsString(Groups.getInstance().createGroup(name, uId)); - SessionManager.getInstance().closeSession(); + Group group = Groups.getInstance().createGroup(name, uId); + SessionManager.getInstance().closeSession();//一度データベースを更新。 //グループにメンバーの追加 SessionManager.getInstance().getSession(); - Group group = mapper.readValue(json, Group.class); -// Groups.addMemberById(group.getgId(), uId);//どうやってこのgIdを取得する? - Groups.addMemberWhenCreateGroup(group, uId); + Groups.addMember(group.getgId(), uId); SessionManager.getInstance().closeSession(); + String json = mapper.writeValueAsString(group); return json; }