Commit Graph

175 Commits

Author SHA1 Message Date
Lars Simon Winzer 54fd43142b Add: MessagesManager to easily distribute messages to all users (Broadcast) 2026-03-15 20:33:55 +01:00
Lars Simon Winzer 5bd88445d2 Add: Modify User to store pending incoming messages 2026-03-15 20:33:24 +01:00
Lars Simon Winzer e6c9c12e3b Add: Message send by user 2026-03-15 20:24:17 +01:00
Lars Simon Winzer 46b1388cad Add: Create UserRegistry and schedule UserCleanupJob 2026-03-15 19:51:03 +01:00
Lars Simon Winzer 68827e177e Add: Move logger creation in CleanupJob to constructor 2026-03-15 19:49:23 +01:00
Lars Simon Winzer 0a5eb5d11c Chore: JavaDoc Docstrings 2026-03-15 19:48:55 +01:00
Lars Simon Winzer 8fae4789ad Add: Make UserRegistry use multiple Maps to accelerate lookups 2026-03-15 19:37:43 +01:00
Lars Simon Winzer 8dd99726ce Add: UserCleanupJob as runnable to remove all expired users 2026-03-15 19:29:25 +01:00
Lars Simon Winzer 1223e1a4a9 Add: Extend UserRegistry to remove Disconnected User, reassign User to new session and get all users 2026-03-15 19:27:41 +01:00
Lars Simon Winzer 9d9b6ae2c7 Add: Handler for DisconnectEvent to SessionRegistry 2026-03-15 18:57:38 +01:00
Lars Simon Winzer a7cdf995c4 Add: Timestamp to User to store time of disconnect 2026-03-15 18:44:03 +01:00
Lars Simon Winzer 82582dae83 Add: UserFactory to create new users and resolve name conflicts 2026-03-15 18:41:57 +01:00
Lars Simon Winzer 7c5a4675dd Add: UserRegistry to store all active users and grand synchronized access 2026-03-15 18:35:25 +01:00
Lars Simon Winzer 2979c91ee0 Add: User to link network to domain 2026-03-15 18:25:48 +01:00
Lars Simon Winzer 8263a1355a Add: UserId to uniquely identify user 2026-03-15 18:22:11 +01:00
Lars Simon Winzer f7f570638b Style: Correct JavaDoc comments and remove trailing whitespaces 2026-03-15 17:06:19 +01:00
Lars Simon Winzer 80c7e1c25d Add: CommandParserDispatcher to dispatch PrimitiveRequest to match CommandParser 2026-03-15 17:04:41 +01:00
Lars Simon Winzer 135e6a5327 Add: Exception to be thrown if no matching CommandParser is found 2026-03-15 16:53:29 +01:00
Lars Simon Winzer 4e853cf35f Add: Interfaces used by the CommandParserDispatcher 2026-03-15 16:53:03 +01:00
Lars Simon Winzer 8f7c92684b Add: Use ProtocolParser in Session 2026-03-15 16:12:14 +01:00
Lars Simon Winzer a5f2ac635d Add: RequestId to PrimitiveRequest 2026-03-15 16:08:48 +01:00
Lars Simon Winzer 7ca0bcc3e0 Add: Implement ProtocolParser to parse RawPacket into PrimitiveRequest 2026-03-15 16:06:04 +01:00
Lars Simon Winzer aa508dfd6c Add: Exception thrown while parsing tokens 2026-03-15 16:00:00 +01:00
Lars Simon Winzer 9c3f62db24 Add: PrimitiveRequest created by ProtocolParser containing a list of Parameter objects 2026-03-15 15:18:38 +01:00
Lars Simon Winzer 0bfcbe95b0 Style: Line length of JavaDoc comment 2026-03-15 14:55:43 +01:00
Lars Simon Winzer 94a2e1f977 Add: Make interface and implementation use RawPacket 2026-03-15 14:55:29 +01:00
Lars Simon Winzer 1bfbb5c75d Add: RawPacket record to store raw data about the incomming request 2026-03-15 14:49:39 +01:00
Lars Simon Winzer 08dc94b4b0 Style: Comply with Spotless
Created issue #2 regarding this issue
2026-03-15 13:38:59 +01:00
Lars Simon Winzer ca11c135f1 Style: Bracket after 'if' and record in one-line 2026-03-15 13:28:06 +01:00
Lars Simon Winzer 60f59e03d4 Add: TokenClassifier to perform more extensive syntax verification and classify tokens 2026-03-15 13:26:59 +01:00
Lars Simon Winzer 1e794337b5 Remove: 'NEWLINE' member from TokenType enum as commands dont span over multiple lines 2026-03-15 13:08:23 +01:00
Lars Simon Winzer 3509a967a6 Add: Tokenizer does no longer classify tokens and instead returns 'RawToken's 2026-03-15 12:21:56 +01:00
Lars Simon Winzer 4c0e6aeb36 Delete: Falsly added file for rudimentary quick testing 2026-03-15 12:20:37 +01:00
Lars Simon Winzer 3e138ab84e Add: State to use RawToken 2026-03-15 12:11:59 +01:00
Lars Simon Winzer 45fd696fec Add: RawToken and RawTokenType for token representation 2026-03-15 12:08:32 +01:00
Lars Simon Winzer b898357d76 Merge branch 'main' into 'feat/tokenizer' 2026-03-14 18:24:03 +01:00
Jona Walpert a15a0a0044 Style: apply Checkstyle fixes on client side 2026-03-14 17:35:47 +01:00
Jona Walpert e3e1da0082 Merge branch 'main' into 'chore/conform-ui-to-checkstyle' 2026-03-14 17:16:57 +01:00
Jona Walpert d1bf8e4c9a Style: Use logger instead of System.out.println 2026-03-14 17:14:41 +01:00
Lars Simon Winzer f3c34dfa7f Move: Tokenizer related tests into server server directory 2026-03-14 17:14:37 +01:00
Lars Simon Winzer 2af3fe7c35 Move: Tokenizer related files into server directory 2026-03-14 17:13:18 +01:00
Julian Kropff 58c473fc9e Merge remote-tracking branch 'origin/main' into feat/game-ui 2026-03-14 17:00:28 +01:00
Julian Kropff c411e9c560 style: apply Checkstyle fixes 2026-03-14 16:51:18 +01:00
Julian Kropff 1c5c4c8a34 style: apply Checkstyle fixes 2026-03-14 16:48:20 +01:00
Julian Kropff 9376b1d406 style: apply Checkstyle fixes 2026-03-14 16:48:06 +01:00
Julian Kropff cb98c70562 style: apply Checkstyle fixes 2026-03-14 16:46:44 +01:00
Julian Kropff d8bfc1c8e9 style: apply Checkstyle fixes 2026-03-14 16:46:28 +01:00
Lars Simon Winzer 14c18df0eb Test: Tokenizer exception 2026-03-14 16:37:11 +01:00
Lars Simon Winzer 208a284204 Test: Tokenizer state 2026-03-14 16:33:34 +01:00
Lars Simon Winzer ef2a00268f Add: Tokenizer to tokenize provided string into tokens and perform syntax check 2026-03-14 16:13:35 +01:00