From 372a02a09304e8691159a61442264dd236b1c99a Mon Sep 17 00:00:00 2001 From: Sebastian Lenzlinger Date: Fri, 8 Apr 2022 16:54:57 +0200 Subject: [PATCH] synchronized addPlayer() in Lobby.addPlayer --- .../unibas/dmi/dbis/cs108/multiplayer/server/ClientHandler.java | 2 ++ src/main/java/ch/unibas/dmi/dbis/cs108/sebaschi/Lobby.java | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/main/java/ch/unibas/dmi/dbis/cs108/multiplayer/server/ClientHandler.java b/src/main/java/ch/unibas/dmi/dbis/cs108/multiplayer/server/ClientHandler.java index 9d47a9d..b02668f 100644 --- a/src/main/java/ch/unibas/dmi/dbis/cs108/multiplayer/server/ClientHandler.java +++ b/src/main/java/ch/unibas/dmi/dbis/cs108/multiplayer/server/ClientHandler.java @@ -223,6 +223,8 @@ public class ClientHandler implements Runnable { serverData.addLobbyToListOfAllLobbies(newGame); LOGGER.debug( this.getClientUserName() + " created a new lobby with ID: " + newGame.getLobbyID()); + //TODO add server response. Here a possibility: + sendMsgToClient("New lobby with ID: " + newGame + " created."); } /** diff --git a/src/main/java/ch/unibas/dmi/dbis/cs108/sebaschi/Lobby.java b/src/main/java/ch/unibas/dmi/dbis/cs108/sebaschi/Lobby.java index b6baa9f..c93147c 100644 --- a/src/main/java/ch/unibas/dmi/dbis/cs108/sebaschi/Lobby.java +++ b/src/main/java/ch/unibas/dmi/dbis/cs108/sebaschi/Lobby.java @@ -85,7 +85,7 @@ public class Lobby { * TODO: Does this method need to implemented somewhere else, e.g. in the ClientHandler? * @param player who wants to join the lobby. */ - public void addPlayer(ClientHandler player) { + public synchronized void addPlayer(ClientHandler player) { if (players.size() <= MAX_NO_OF_CLIENTS) { players.add(player); numberOfPlayersInLobby++;