diff --git a/src/main/java/com/ntlab/irisserver/resources/RoomsRest.java b/src/main/java/com/ntlab/irisserver/resources/RoomsRest.java index 35edc49..edc0bfd 100644 --- a/src/main/java/com/ntlab/irisserver/resources/RoomsRest.java +++ b/src/main/java/com/ntlab/irisserver/resources/RoomsRest.java @@ -15,7 +15,7 @@ public class RoomsRest { @POST //部屋の作成,オーナーを設定 - @Path("/a") + @Path("/") @Produces(MediaType.APPLICATION_JSON) public RoomJson makeRooms(@FormParam("nickname") String owner){ RoomManager rm = RoomManager.getInstance(); @@ -53,7 +53,7 @@ //--------------------------------------テスト用------------------------------------------- @GET //すべての部屋の情報を表示 - @Path("/aa") + @Path("/") @Produces(MediaType.APPLICATION_JSON) public List getRoomsInfo() { RoomManager rm = RoomManager.getInstance(); diff --git a/src/main/java/com/ntlab/irisserver/resources/StateRest.java b/src/main/java/com/ntlab/irisserver/resources/StateRest.java index 48a22ae..59fdf0d 100644 --- a/src/main/java/com/ntlab/irisserver/resources/StateRest.java +++ b/src/main/java/com/ntlab/irisserver/resources/StateRest.java @@ -48,21 +48,21 @@ //rid,nickname,stateを引数として持ってくる public void putState(@PathParam("rid") String rid,@FormParam("nickname") String nickname,@FormParam("state") Integer state) throws IOException { -// RoomManager rm = RoomManager.getInstance(); -// Room room = rm.getRoom(rid); -// -// -// if(nickname.equals(room.ownerName)){ //nicknameがownerだった場合 -// room.setState(state); //部屋の情報を変更 -// if (state == 2) { -// String path; -// path = applicationContext.getResource("file:").getFile().getAbsolutePath()+"/apache-tomcat-9.0.10/webapps/irisdata/keywords.txt"; -// //path = "C:\\Users\\student\\IdeaProjects\\IrisServer\\src\\main\\java\\com\\ntlab\\irisserver\\tmp\\keywords.txt"; -// KeywordManager km = KeywordManager.getInstance(); -// String[] keywords = km.getKeywords(path); -// Game game = new Game(room, keywords); -// } -// } + RoomManager rm = RoomManager.getInstance(); + Room room = rm.getRoom(rid); + + + if(nickname.equals(room.ownerName)){ //nicknameがownerだった場合 + room.setState(state); //部屋の情報を変更 + if (state == 2) { + String path; + path = applicationContext.getResource("file:").getFile().getAbsolutePath()+"/apache-tomcat-9.0.10/webapps/irisdata/keywords.txt"; + //path = "C:\\Users\\student\\IdeaProjects\\IrisServer\\src\\main\\java\\com\\ntlab\\irisserver\\tmp\\keywords.txt"; + KeywordManager km = KeywordManager.getInstance(); + String[] keywords = km.getKeywords(path); + Game game = new Game(room, keywords); + } + } } diff --git a/src/main/java/com/ntlab/irisserver/websockets/GameStartWebSocket.java b/src/main/java/com/ntlab/irisserver/websockets/GameStartWebSocket.java index 34b697e..79bc9f2 100644 --- a/src/main/java/com/ntlab/irisserver/websockets/GameStartWebSocket.java +++ b/src/main/java/com/ntlab/irisserver/websockets/GameStartWebSocket.java @@ -54,38 +54,24 @@ //stateを変更して、全体の画面を変更させるように導く処理 session.getBasicRemote().sendText(nickname+state+"が正常に渡された!"); RoomManager rm = RoomManager.getInstance(); - session.getBasicRemote().sendText(nickname+state+"1"); Room room = rm.getRoom(rid); - session.getBasicRemote().sendText(nickname+state+"2"); - session.getBasicRemote().sendText(nickname+state+"2.1"+room.ownerName); - session.getBasicRemote().sendText(nickname+state+"2.2"); + // ここまで、room.ownerができていない。room.owner=nullになってる if(nickname.equals(room.ownerName)){ //nicknameがownerだった場合 - session.getBasicRemote().sendText(nickname+state+"2.3"); room.setState(state); //部屋の情報を変更 - session.getBasicRemote().sendText(nickname+state+"3"); String path; path = applicationContext.getResource("file:").getFile().getAbsolutePath()+"/apache-tomcat-9.0.10/webapps/irisdata/keywords.txt"; - session.getBasicRemote().sendText(nickname+state+"4"); KeywordManager km = KeywordManager.getInstance(); - session.getBasicRemote().sendText(nickname+state+"5"); String[] keywords = km.getKeywords(path); - session.getBasicRemote().sendText(nickname+state+"6"); Game game = new Game(room, keywords); - session.getBasicRemote().sendText(nickname+state+"7"); // 同じridのメンバーに一斉にメッセージ送って、画面を切り替えさせる // 本来はここに処理を書くべきではないかも。 for(Map.Entry entry : sessionMap.entrySet()) { if(entry.getKey().contains(rid)){ - session.getBasicRemote().sendText(nickname+state+"8"); entry.getValue().getBasicRemote().sendText("changeState-2"); - session.getBasicRemote().sendText(nickname+state+"9"); } } - session.getBasicRemote().sendText(nickname+state+"10"); - } - session.getBasicRemote().sendText(nickname+state+"11"); } return "WebSocketでメッセージを受信しました!";