diff --git a/src/main/java/ch/unibas/dmi/dbis/cs108/casono/client/ui/gameui/CasinoGameUI.java b/src/main/java/ch/unibas/dmi/dbis/cs108/casono/client/ui/gameui/CasinoGameUI.java index d6908c1..2970e70 100644 --- a/src/main/java/ch/unibas/dmi/dbis/cs108/casono/client/ui/gameui/CasinoGameUI.java +++ b/src/main/java/ch/unibas/dmi/dbis/cs108/casono/client/ui/gameui/CasinoGameUI.java @@ -1,6 +1,5 @@ package ch.unibas.dmi.dbis.cs108.casono.client.ui.gameui; -import ch.unibas.dmi.dbis.cs108.casono.client.ClientApp; import ch.unibas.dmi.dbis.cs108.casono.client.game.GameService; import ch.unibas.dmi.dbis.cs108.casono.client.game.PlayerId; import ch.unibas.dmi.dbis.cs108.casono.client.network.ClientService; @@ -78,7 +77,8 @@ public class CasinoGameUI extends Application { public void start(Stage stage) throws IOException { if (clientService == null) { - clientService = ClientApp.getSharedClientService(); + clientService = + ch.unibas.dmi.dbis.cs108.casono.client.ClientApp.getSharedClientService(); } if (clientService == null) { throw new IllegalStateException( @@ -90,7 +90,8 @@ public class CasinoGameUI extends Application { String effectiveUsername = normalize(username); if (effectiveUsername == null) { - effectiveUsername = normalize(ClientApp.getSharedUsername()); + effectiveUsername = + normalize(ch.unibas.dmi.dbis.cs108.casono.client.ClientApp.getSharedUsername()); } if (effectiveUsername == null) { @@ -104,7 +105,7 @@ public class CasinoGameUI extends Application { + "', injectedUsername='" + username + "', sharedUsername='" - + ClientApp.getSharedUsername() + + ch.unibas.dmi.dbis.cs108.casono.client.ClientApp.getSharedUsername() + "', hasClientService=" + (clientService != null)); diff --git a/src/main/java/ch/unibas/dmi/dbis/cs108/casono/client/ui/lobbyui/CasinomainuiController.java b/src/main/java/ch/unibas/dmi/dbis/cs108/casono/client/ui/lobbyui/CasinomainuiController.java index b3c2297..db644f4 100644 --- a/src/main/java/ch/unibas/dmi/dbis/cs108/casono/client/ui/lobbyui/CasinomainuiController.java +++ b/src/main/java/ch/unibas/dmi/dbis/cs108/casono/client/ui/lobbyui/CasinomainuiController.java @@ -55,9 +55,9 @@ public class CasinomainuiController { } /** - * Initializes the UI components and sets default values. If a shared {@link ClientService} - * exists (created at application start), the controller reuses it so the connection remains - * open and already-logged-in. + * Initializes the UI components and sets default values. If a shared {@link + * ch.unibas.dmi.dbis.cs108.casono.client.network.ClientService} exists (created at application + * start), the controller reuses it so the connection remains open and already-logged-in. */ @FXML public void initialize() { diff --git a/src/main/java/ch/unibas/dmi/dbis/cs108/casono/client/ui/lobbyui/LobbyButtonGridManager.java b/src/main/java/ch/unibas/dmi/dbis/cs108/casono/client/ui/lobbyui/LobbyButtonGridManager.java index e3f1d01..116686f 100644 --- a/src/main/java/ch/unibas/dmi/dbis/cs108/casono/client/ui/lobbyui/LobbyButtonGridManager.java +++ b/src/main/java/ch/unibas/dmi/dbis/cs108/casono/client/ui/lobbyui/LobbyButtonGridManager.java @@ -1,9 +1,7 @@ package ch.unibas.dmi.dbis.cs108.casono.client.ui.lobbyui; -import ch.unibas.dmi.dbis.cs108.casono.client.ClientApp; import ch.unibas.dmi.dbis.cs108.casono.client.network.ClientService; import ch.unibas.dmi.dbis.cs108.casono.client.network.LobbyClient; -import ch.unibas.dmi.dbis.cs108.casono.client.ui.gameui.CasinoGameUI; import ch.unibas.dmi.dbis.cs108.casono.server.network.command.parsing.RequestParameter; import java.util.ArrayList; import java.util.Collections; @@ -555,10 +553,14 @@ public class LobbyButtonGridManager { try { var cs = lobbyClient.getClientService(); - CasinoGameUI.setClientService(cs); - CasinoGameUI.setLobbyId(lobbyId); + ch.unibas.dmi.dbis.cs108.casono.client.ui.gameui.CasinoGameUI + .setClientService(cs); + ch.unibas.dmi.dbis.cs108.casono.client.ui.gameui.CasinoGameUI.setLobbyId( + lobbyId); - String username = ClientApp.getSharedUsername(); + String username = + ch.unibas.dmi.dbis.cs108.casono.client.ClientApp + .getSharedUsername(); if (username == null || username.isBlank()) { username = "Guest-" @@ -568,9 +570,11 @@ public class LobbyButtonGridManager { .toString() .substring(0, GUEST_ID_LENGTH); } - CasinoGameUI.setUsername(username); + ch.unibas.dmi.dbis.cs108.casono.client.ui.gameui.CasinoGameUI.setUsername( + username); - new CasinoGameUI().start(gameStage); + new ch.unibas.dmi.dbis.cs108.casono.client.ui.gameui.CasinoGameUI() + .start(gameStage); } catch (Exception e) { LOGGER.error("Game UI failed: {}", e.getMessage()); diff --git a/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/app/commands/game/bet/PlayerBetHandler.java b/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/app/commands/game/bet/PlayerBetHandler.java index a37ebce..ea39326 100644 --- a/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/app/commands/game/bet/PlayerBetHandler.java +++ b/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/app/commands/game/bet/PlayerBetHandler.java @@ -4,7 +4,6 @@ import ch.unibas.dmi.dbis.cs108.casono.server.domain.game.GameController; import ch.unibas.dmi.dbis.cs108.casono.server.domain.game.player.PlayerId; import ch.unibas.dmi.dbis.cs108.casono.server.domain.lobby.LobbyId; import ch.unibas.dmi.dbis.cs108.casono.server.domain.lobby.LobbyManager; -import ch.unibas.dmi.dbis.cs108.casono.server.domain.user.User; import ch.unibas.dmi.dbis.cs108.casono.server.domain.user.UserRegistry; import ch.unibas.dmi.dbis.cs108.casono.server.network.command.execution.CommandHandler; import ch.unibas.dmi.dbis.cs108.casono.server.network.protocol.response.ErrorResponse; @@ -59,7 +58,8 @@ public class PlayerBetHandler extends CommandHandler { return; } - Optional opt = userRegistry.getBySessionId(request.getSessionId()); + Optional opt = + userRegistry.getBySessionId(request.getSessionId()); if (opt.isEmpty()) { responseDispatcher.dispatch( new ErrorResponse(request.getContext(), "NOT_LOGGED_IN", "User not logged in")); diff --git a/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/app/commands/game/call/PlayerCallHandler.java b/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/app/commands/game/call/PlayerCallHandler.java index b1c3618..cdaffc9 100644 --- a/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/app/commands/game/call/PlayerCallHandler.java +++ b/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/app/commands/game/call/PlayerCallHandler.java @@ -4,7 +4,6 @@ import ch.unibas.dmi.dbis.cs108.casono.server.domain.game.GameController; import ch.unibas.dmi.dbis.cs108.casono.server.domain.game.player.PlayerId; import ch.unibas.dmi.dbis.cs108.casono.server.domain.lobby.LobbyId; import ch.unibas.dmi.dbis.cs108.casono.server.domain.lobby.LobbyManager; -import ch.unibas.dmi.dbis.cs108.casono.server.domain.user.User; import ch.unibas.dmi.dbis.cs108.casono.server.domain.user.UserRegistry; import ch.unibas.dmi.dbis.cs108.casono.server.network.command.execution.CommandHandler; import ch.unibas.dmi.dbis.cs108.casono.server.network.protocol.response.ErrorResponse; @@ -47,7 +46,8 @@ public class PlayerCallHandler extends CommandHandler { */ @Override public void execute(PlayerCallRequest request) { - Optional opt = userRegistry.getBySessionId(request.getSessionId()); + Optional opt = + userRegistry.getBySessionId(request.getSessionId()); if (opt.isEmpty()) { responseDispatcher.dispatch( new ErrorResponse(request.getContext(), "NOT_LOGGED_IN", "User not logged in")); diff --git a/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/app/commands/game/fold/PlayerFoldHandler.java b/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/app/commands/game/fold/PlayerFoldHandler.java index 7adca85..0db3628 100644 --- a/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/app/commands/game/fold/PlayerFoldHandler.java +++ b/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/app/commands/game/fold/PlayerFoldHandler.java @@ -4,7 +4,6 @@ import ch.unibas.dmi.dbis.cs108.casono.server.domain.game.GameController; import ch.unibas.dmi.dbis.cs108.casono.server.domain.game.player.PlayerId; import ch.unibas.dmi.dbis.cs108.casono.server.domain.lobby.LobbyId; import ch.unibas.dmi.dbis.cs108.casono.server.domain.lobby.LobbyManager; -import ch.unibas.dmi.dbis.cs108.casono.server.domain.user.User; import ch.unibas.dmi.dbis.cs108.casono.server.domain.user.UserRegistry; import ch.unibas.dmi.dbis.cs108.casono.server.network.command.execution.CommandHandler; import ch.unibas.dmi.dbis.cs108.casono.server.network.protocol.response.ErrorResponse; @@ -47,7 +46,8 @@ public class PlayerFoldHandler extends CommandHandler { */ @Override public void execute(PlayerFoldRequest request) { - Optional opt = userRegistry.getBySessionId(request.getSessionId()); + Optional opt = + userRegistry.getBySessionId(request.getSessionId()); if (opt.isEmpty()) { responseDispatcher.dispatch( new ErrorResponse(request.getContext(), "NOT_LOGGED_IN", "User not logged in")); diff --git a/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/app/commands/game/raise/PlayerRaiseHandler.java b/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/app/commands/game/raise/PlayerRaiseHandler.java index c17b11c..6fbaaca 100644 --- a/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/app/commands/game/raise/PlayerRaiseHandler.java +++ b/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/app/commands/game/raise/PlayerRaiseHandler.java @@ -4,7 +4,6 @@ import ch.unibas.dmi.dbis.cs108.casono.server.domain.game.GameController; import ch.unibas.dmi.dbis.cs108.casono.server.domain.game.player.PlayerId; import ch.unibas.dmi.dbis.cs108.casono.server.domain.lobby.LobbyId; import ch.unibas.dmi.dbis.cs108.casono.server.domain.lobby.LobbyManager; -import ch.unibas.dmi.dbis.cs108.casono.server.domain.user.User; import ch.unibas.dmi.dbis.cs108.casono.server.domain.user.UserRegistry; import ch.unibas.dmi.dbis.cs108.casono.server.network.command.execution.CommandHandler; import ch.unibas.dmi.dbis.cs108.casono.server.network.protocol.response.ErrorResponse; @@ -61,7 +60,8 @@ public class PlayerRaiseHandler extends CommandHandler { return; } - Optional opt = userRegistry.getBySessionId(request.getSessionId()); + Optional opt = + userRegistry.getBySessionId(request.getSessionId()); if (opt.isEmpty()) { responseDispatcher.dispatch( new ErrorResponse(request.getContext(), "NOT_LOGGED_IN", "User not logged in")); diff --git a/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/app/commands/lobby/get_lobby_list/GetLobbyListHandler.java b/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/app/commands/lobby/get_lobby_list/GetLobbyListHandler.java index 8cc9759..49e49d8 100644 --- a/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/app/commands/lobby/get_lobby_list/GetLobbyListHandler.java +++ b/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/app/commands/lobby/get_lobby_list/GetLobbyListHandler.java @@ -1,6 +1,5 @@ package ch.unibas.dmi.dbis.cs108.casono.server.app.commands.lobby.get_lobby_list; -import ch.unibas.dmi.dbis.cs108.casono.server.domain.lobby.Lobby; import ch.unibas.dmi.dbis.cs108.casono.server.domain.lobby.LobbyManager; import ch.unibas.dmi.dbis.cs108.casono.server.network.command.execution.CommandHandler; import ch.unibas.dmi.dbis.cs108.casono.server.network.protocol.response.dispatcher.ResponseDispatcher; @@ -22,7 +21,8 @@ public class GetLobbyListHandler extends CommandHandler { @Override public void execute(GetLobbyListRequest request) { - Collection l = lobbyManager.getAllLobbies(); + Collection l = + lobbyManager.getAllLobbies(); responseDispatcher.dispatch(new GetLobbyListResponse(request.getContext(), l)); } } diff --git a/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/app/commands/lobby/start_game/StartGameHandler.java b/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/app/commands/lobby/start_game/StartGameHandler.java index 8787f20..eb1f335 100644 --- a/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/app/commands/lobby/start_game/StartGameHandler.java +++ b/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/app/commands/lobby/start_game/StartGameHandler.java @@ -11,7 +11,6 @@ import ch.unibas.dmi.dbis.cs108.casono.server.domain.game.state.GameState; import ch.unibas.dmi.dbis.cs108.casono.server.domain.lobby.Lobby; import ch.unibas.dmi.dbis.cs108.casono.server.domain.lobby.LobbyId; import ch.unibas.dmi.dbis.cs108.casono.server.domain.lobby.LobbyManager; -import ch.unibas.dmi.dbis.cs108.casono.server.domain.user.User; import ch.unibas.dmi.dbis.cs108.casono.server.domain.user.UserRegistry; import ch.unibas.dmi.dbis.cs108.casono.server.network.command.execution.CommandHandler; import ch.unibas.dmi.dbis.cs108.casono.server.network.protocol.response.ErrorResponse; @@ -39,8 +38,10 @@ public class StartGameHandler extends CommandHandler { @Override public void execute(StartGameRequest request) { - Optional opt = userRegistry.getBySessionId(request.getSessionId()); + Optional opt = + userRegistry.getBySessionId(request.getSessionId()); if (opt.isEmpty()) { + // Guard: UserLoggedInCheck should normally handle this responseDispatcher.dispatch( new ErrorResponse( request.getContext(), "USER_NOT_LOGGED_IN", "User not logged in")); diff --git a/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/app/commands/send_message/SendMessageHandler.java b/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/app/commands/send_message/SendMessageHandler.java index 915ded1..680819a 100644 --- a/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/app/commands/send_message/SendMessageHandler.java +++ b/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/app/commands/send_message/SendMessageHandler.java @@ -5,7 +5,6 @@ import ch.unibas.dmi.dbis.cs108.casono.client.chat.Message; import ch.unibas.dmi.dbis.cs108.casono.server.domain.lobby.Lobby; import ch.unibas.dmi.dbis.cs108.casono.server.domain.lobby.LobbyId; import ch.unibas.dmi.dbis.cs108.casono.server.domain.lobby.LobbyManager; -import ch.unibas.dmi.dbis.cs108.casono.server.domain.user.User; import ch.unibas.dmi.dbis.cs108.casono.server.domain.user.UserRegistry; import ch.unibas.dmi.dbis.cs108.casono.server.network.command.execution.CommandHandler; import ch.unibas.dmi.dbis.cs108.casono.server.network.protocol.response.OkResponse; @@ -41,7 +40,8 @@ public class SendMessageHandler extends CommandHandler { @Override public void execute(SendMessageRequest request) { Message message = request.getMessage(); - Optional senderUser = userRegistry.getBySessionId(request.getSessionId()); + Optional senderUser = + userRegistry.getBySessionId(request.getSessionId()); if (senderUser.isPresent()) { message.sender = senderUser.get().getName(); } diff --git a/src/test/java/ch/unibas/dmi/dbis/cs108/casono/client/ui/lobbyui/LobbyButtonGridManagerTest.java b/src/test/java/ch/unibas/dmi/dbis/cs108/casono/client/ui/lobbyui/LobbyButtonGridManagerTest.java index 06be776..9958957 100644 --- a/src/test/java/ch/unibas/dmi/dbis/cs108/casono/client/ui/lobbyui/LobbyButtonGridManagerTest.java +++ b/src/test/java/ch/unibas/dmi/dbis/cs108/casono/client/ui/lobbyui/LobbyButtonGridManagerTest.java @@ -1,7 +1,6 @@ package ch.unibas.dmi.dbis.cs108.casono.client.ui.lobbyui; import ch.unibas.dmi.dbis.cs108.casono.client.network.ClientService; -import ch.unibas.dmi.dbis.cs108.casono.client.network.TestServer; import javafx.scene.layout.GridPane; import org.junit.jupiter.api.*; @@ -9,7 +8,7 @@ class LobbyButtonGridManagerTest { LobbyButtonGridManager gridManager; LobbyButtonTranslationManager translationManager; GridPane gridPane; - TestServer testServer; + ch.unibas.dmi.dbis.cs108.casono.client.network.TestServer testServer; @BeforeEach void setUp() throws Exception { @@ -17,7 +16,7 @@ class LobbyButtonGridManagerTest { translationManager = LobbyButtonTranslationManager.getInstance(); translationManager.getButtonIdToLobbyId().clear(); // Start an in-process test server and connect a real ClientService to it. - testServer = new TestServer(); + testServer = new ch.unibas.dmi.dbis.cs108.casono.client.network.TestServer(); String host = "127.0.0.1"; int port = testServer.getPort(); ClientService clientService = new ClientService(host, port);