Lars Simon Winzer
4c10bc7ab0
Refactor: Use removeBySessionId method instead of onDisconnect handler
2026-04-07 13:39:44 +02:00
Lars Simon Winzer
dfbaaac4f0
Merge branch 'main' into 'feat/41-add-serverside-logout-command'
2026-04-07 13:36:07 +02:00
Lars Simon Winzer
822dfe778d
Style: Apply Spotless
2026-04-07 13:31:26 +02:00
Lars Simon Winzer
ee694b8168
Docs: Write JavaDoc for newly added methods
2026-04-07 13:30:09 +02:00
Lars Simon Winzer
36f07880e5
Refactor: Use internal remove method
2026-04-07 13:28:12 +02:00
Lars Simon Winzer
22dc2c7e54
Add: Methods to remove user by UserId, SessionId and Username from SessionRegistry
2026-04-07 13:27:12 +02:00
Lars Simon Winzer
9a7b1c4dea
Add: LOGOUT command in composition root
2026-04-07 12:45:52 +02:00
Lars Simon Winzer
8376f681b1
Add: LogoutHandler for processing logout commands
2026-04-07 12:40:51 +02:00
Lars Simon Winzer
fa0ac684f1
Add: LogoutParser for parsing logout requests
2026-04-07 12:31:48 +02:00
Lars Simon Winzer
4ff28932b4
Add: LogoutRequest for handling logout commands
2026-04-07 12:30:40 +02:00
Lars Simon Winzer
708f6c5773
Add: Integrate LOGIN command in composition root
2026-04-07 12:12:33 +02:00
Lars Simon Winzer
be173f2847
Add: LoginHandler to execute and respond to LoginRequest
2026-04-07 12:10:45 +02:00
Lars Simon Winzer
7eda64b5c3
Add: LoginResponse containing assigned username and UserId
2026-04-07 11:58:43 +02:00
Lars Simon Winzer
8580a2803c
Add: LoginParser to check for required parameter and construct LoginRequest
2026-04-07 11:54:54 +02:00
Lars Simon Winzer
68a69b865e
Add: LoginRequest storing requested username for login
2026-04-07 11:51:39 +02:00
Julian Kropff
6693d57688
Merge remote-tracking branch 'origin/main' into feat/gameui
2026-04-05 13:36:22 +02:00
Julian Kropff
828e2f3131
Fix: checkstyle issues
2026-04-05 11:21:27 +02:00
Julian Kropff
bf7ac4fc34
Fix: formatting and checkstyle issues
2026-04-05 11:15:26 +02:00
Julian Kropff
d4e69d26d7
Merge remote-tracking branch 'origin/main' into feat/game-engine
2026-04-05 11:04:19 +02:00
Julian Kropff
f7dc3d1a8e
Fix: Typo in GameController unit tests for game engine
2026-04-04 23:50:58 +02:00
Julian Kropff
585a78fbcc
Add: GameController unit tests for game engine
2026-04-04 23:38:45 +02:00
Julian Kropff
769105b87d
Add: rule system for game engine
2026-04-04 23:38:19 +02:00
Julian Kropff
a20ba7cef5
Add: hand evaluation for game engine
2026-04-04 23:37:32 +02:00
Julian Kropff
fb71c6de7b
Add: game engine and flow control
2026-04-04 23:35:43 +02:00
Julian Kropff
041a5f135a
Add: player actions for game engine
2026-04-04 23:34:01 +02:00
Julian Kropff
700e8de39d
Add: core domain models for game engine
2026-04-04 23:31:34 +02:00
Jona Walpert
42b5344059
Test: Add in-process TestServer and update LobbyButtonGridManagerTest
...
Add TestServer that speaks the RawPacket/TcpTransport protocol for CREATE_LOBBY,
GET_LOBBY_STATUS and JOIN_LOBBY. Update LobbyButtonGridManagerTest to start the
TestServer and exercise a real `ClientService(host, port)`, enabling integration-style
tests of the client->transport->server roundtrip without an external server.
Refs #36
2026-04-02 22:28:12 +02:00
Jona Walpert
76e62b3cff
Feat: Accept ClientService and delegate to LobbyClient
...
Add constructor overload that accepts ClientService and constructs a LobbyClient.
Avoids implicit host/port lookup in UI code; caller controls network config.
Keeps rendering/status behavior unchanged (async updates, deterministic ordering).
2026-04-02 22:26:14 +02:00
Jona Walpert
1070b5d4b9
Chore(startup): Propagate server ip:port to UI via system properties
...
ClientApp.start parses <ip>:<port>, sets `casono.server.host` / `casono.server.port` and forwards the original launch arg to the JavaFX launcher.
Casinomainui reads JavaFX launch args and exposes the same system properties.
CasinomainuiController reads those properties and constructs `ClientService(host, port)` (no hardcoded defaults)."
2026-04-02 22:12:48 +02:00
Jona Walpert
4daf6ff4a2
Fix: Sort button IDs before iterating map for deterministic rendering
...
Copy mapping.keySet() to a List and call Collections.sort(...) before iterating.
Ensures stable button placement and reproducible image updates (render + update)
2026-04-02 22:00:18 +02:00
Jona Walpert
3153f7027d
fix: temporyy fix for NPE and wrong naming
2026-04-02 18:50:20 +02:00
Jona Walpert
b5d19d915b
Add: first (non functioning) modified version of lobby button controlelr with abckend conenction
2026-04-02 16:31:27 +02:00
Julian Kropff
77c7f7c0a5
Add: initial client structure for game and network
2026-04-02 16:08:24 +02:00
Lars Simon Winzer
93dba00a4d
Style: Apply Spotless
2026-04-02 15:02:58 +02:00
Lars Simon Winzer
de11d673dc
Docs: Write JavaDoc for added components
2026-04-02 15:02:00 +02:00
Lars Simon Winzer
72e3d257ff
Add: Register CheckUsernameHandler in composition root
2026-04-02 14:35:56 +02:00
Lars Simon Winzer
5ef2fa5df1
Refactor: Change UsernameAvailability from public to package-private access
2026-04-02 14:34:24 +02:00
Lars Simon Winzer
5fa478c440
Add: CheckUsernameHandler getting User from UserRegistry and determining availablity
2026-04-02 14:33:59 +02:00
Lars Simon Winzer
9087f009d3
Add: CheckUsernameResponse containing username availability field
2026-04-02 14:33:26 +02:00
Lars Simon Winzer
bfbf4b2015
Add: UsernameAvailability enum with availability states
2026-04-02 14:28:56 +02:00
Lars Simon Winzer
ea26e371c2
Merge branch 'main' into 'feat/39-add-serverside-check-nick-command'
2026-04-02 14:24:32 +02:00
Lars Simon Winzer
415ad754df
Style: Apply Spotless
2026-04-02 14:18:09 +02:00
Lars Simon Winzer
a9878da3f2
Docs: Write JavaDoc for changed components
2026-04-02 14:17:45 +02:00
Lars Simon Winzer
f91fa698f3
Refactor: Rename user lookup methods from 'find' to 'get' prefix
2026-04-02 14:12:13 +02:00
Lars Simon Winzer
5b70fb89ef
Add: Implement methods to find users by UserId and username
2026-04-02 14:11:14 +02:00
Lars Simon Winzer
7a9114045f
Merge branch 'main' into 'feat/39-add-serverside-check-nick-command'
2026-04-02 13:50:39 +02:00
Lars Simon Winzer
528a40b394
Style: Apply Spotless
2026-04-02 13:45:14 +02:00
Lars Simon Winzer
f95d9174f1
Add: Handle MissingParameterException in SessionReader and respond to request
2026-04-02 13:44:51 +02:00
Lars Simon Winzer
07587340d4
Add: Register CheckUsernameParser in composition root
2026-04-02 13:30:22 +02:00
Lars Simon Winzer
3b44e58505
Add: CheckUsernameParser to check for required parameter
2026-04-02 13:26:27 +02:00