351 Commits

Author SHA1 Message Date
Sebastian Lenzlinger
e9cade1528 listAllLobbiesToClient still does not work properly: TODO added. 2022-04-08 19:30:50 +02:00
Sebastian Lenzlinger
da5189311e Changed functionality of listAllLobbiesToClient():
Now it writes to the OutPutStream itself instead of sending a CHATM to client. Hope is that the JClientParser only has to parse once.
2022-04-08 19:28:01 +02:00
Sebastian Lenzlinger
e23a749f55 Changed the way LISTL was implemented since it caused problems for the parser of the client. 2022-04-08 19:12:02 +02:00
Sebastian Lenzlinger
a10ea16d35 Added some Documenting. Added some fields to ClientAttributes.java that might be useful in case we need this class. 2022-04-08 18:55:21 +02:00
Sebastian Lenzlinger
d8692152b4 If a client connection is closed the ClientHandleris now removed from the set of all clients on the server and from any lobby he was in. 2022-04-08 18:38:59 +02:00
Jonas
9583cd56e1 added all necessary documentation to Protocol.java 2022-04-08 18:02:23 +02:00
Sebastian Lenzlinger
b55494c106 Added ClientAttributes.java for possible future use. 2022-04-08 17:58:12 +02:00
Sebastian Lenzlinger
24dceee1d8 Added method to remove disconnected client from central data. client handler uses it. 2022-04-08 17:50:49 +02:00
Sebastian Lenzlinger
709e5323e8 actually call method when LISTL is recieved. 2022-04-08 17:24:20 +02:00
Sebastian Lenzlinger
6297439c3c finnished listAllLobbiesToClient() 2022-04-08 17:21:13 +02:00
Sebastian Lenzlinger
922561d522 added getIdAndAdminForList() method in Lobby to facilitate sending a list of lobbies to a client 2022-04-08 17:09:17 +02:00
Sebastian Lenzlinger
f910775f96 listAllLobbies() method started 2022-04-08 16:59:48 +02:00
Sebastian Lenzlinger
372a02a093 synchronized addPlayer() in Lobby.addPlayer 2022-04-08 16:54:57 +02:00
Sebastian Lenzlinger
37a8caa64d Imlemented creating a lobby in the ClientHandler. Added getLobbyID() method to Lobby.java 2022-04-08 16:50:26 +02:00
Sebastian Lenzlinger
8ea39356f2 synchronized adding to shared resources 2022-04-08 16:42:04 +02:00
Sebastian Lenzlinger
b0ebbc9c77 Extending CentralServerData to enable lobby creation and joining 2022-04-08 16:34:25 +02:00
Sebastian Lenzlinger
4557b4801b Client chatListener now throws an IO exception of the chatMSg from the server is null. 2022-04-08 16:15:04 +02:00
Sebastian Lenzlinger
968cb94f21 Now the client disconnects if:
1. no pingback recieved
2. isConnected has already been set to false
In this case it looks to be a case where the client isn't responding correctly and the server may close the connection. Added a debog log statement at the respective place.
2022-04-08 16:12:19 +02:00
Sebastian Lenzlinger
f57889431d minor change to addPlayer() method 2022-04-08 15:45:35 +02:00
Sebastian Lenzlinger
9e112b493a Test commit zum schauen ob meine Commits wieder richtig zugeordnet werden. 2022-04-08 15:37:08 +02:00
sebaschi
e86a09e9a8 Completed "else{}" part in addPlayer() method. If the lobby is full a msg is sent to client stating to join a different lobby a creat a new game. Added todo about the servers response. 2022-04-08 15:14:15 +02:00
sebaschi
15730ef39c Diary update von Sebastian. 2022-04-08 15:03:48 +02:00
sebaschi
15d6474765 ""/l" command added to MessageFormatter.java to represent LISTL protocol command. 2022-04-08 14:57:56 +02:00
sebaschi
13ac486624 Added TODO in Protocol.java: Add the servers reaction to LISTL 2022-04-08 14:53:52 +02:00
sebaschi
be2c8d6698 Added LISTL command to Protocol.java and in JServerProtocolParser.java. currently it is only logged THAt it was reached and parsed, but no functionality is attached. 2022-04-08 14:51:31 +02:00
sebaschi
ae61da0607 LISTL command added to Protocol.txt. LISTL shall list all lobbies. 2022-04-08 14:43:45 +02:00
sebaschi
79ddbaf416 Added link referenc in documentation from JServerProtocolParserto Clienthandler. Added LoginClient class for possible implementation of a login sequence. 2022-04-08 14:37:30 +02:00
sebaschi
dd2beb559a Added CRTGM debug logger to JServerProtocolParser to see if command is reached. added "/g" as terminal command for client to issue CRTGM command. remobed respective todos from Protocol.java. 2022-04-08 14:16:40 +02:00
sebaschi
e2a400d0ca added CRTGM command to Protocol.java. and respective todos. 2022-04-08 14:03:40 +02:00
sebaschi
0e8750c985 Updated diary.txt for Sebastian 8.4.22. Started to handle case in Lobby if lobby is full. 2022-04-08 13:34:30 +02:00
sebaschi
22d356e361 Merge branch 'master' of ssh://git.scicore.unibas.ch:2222/cs108-fs22/Gruppe-8 2022-04-08 13:05:44 +02:00
Jonas
c3096d7088 Merge remote-tracking branch 'origin/master' 2022-04-08 13:03:41 +02:00
Jonas
e348840169 protocol is now fully in the protocol.java class 2022-04-08 13:03:32 +02:00
Seraina
ea0c0d1b3b Merge remote-tracking branch 'origin/master' 2022-04-08 13:01:10 +02:00
Seraina
dffd1731e2 Added Doc for print Method 2022-04-08 13:00:47 +02:00
Seraina Schöb
f858c734f7 Update Diary.txt 2022-04-08 10:58:17 +00:00
sebaschi
8f453fb9e8 started adding Debug Logger messages to the Lobby methods. 2022-04-08 12:57:36 +02:00
sebaschi
d0ceb6b6f9 Merge remote-tracking branch 'origin/master' 2022-04-08 12:47:26 +02:00
sebaschi
ac022e1f7c Changed the list in ServerLobby to static, since they are global per running server. 2022-04-08 12:47:19 +02:00
Seraina
f729a62289 Merge remote-tracking branch 'origin/master' 2022-04-08 12:46:18 +02:00
Seraina
c134de8bba Removed static from Methods 2022-04-08 12:45:57 +02:00
sebaschi
9cc7a37eb9 ServerLobby now has a list of open lobbies and a list of all clients on the server. 2022-04-08 12:43:36 +02:00
Seraina
33d8f779a2 Merge remote-tracking branch 'origin/master' 2022-04-08 12:42:25 +02:00
Seraina
4337583de6 Fixed some bugs now the VoteHanlder does what it is supposed to 2022-04-08 12:42:02 +02:00
sebaschi
16e6364cc9 Lobby now have static field to count how many lobbies there are in total which is used to assign a particular lobby and ID, so players can ask to join the lobby. 2022-04-08 12:40:11 +02:00
Jonas
1d9ee624fe Merge remote-tracking branch 'origin/master' 2022-04-08 12:36:41 +02:00
Jonas
b6d2a04e76 Working on putting all protocol messages through Protocol.java.
Some small adjustments & bugfixes to how naming is handled.
Added loggedIn boolean for ClientHandler, not meaningfully implemented yet though.
Other minor changes.
2022-04-08 12:36:30 +02:00
sebaschi
052a207822 Added final field MAX_NO_OF_CLIENTS used to not overfill the lobby. 2022-04-08 12:23:51 +02:00
sebaschi
90f844ce6b Added List of ClientHandlers to represent who is in the lobby, aka the players. 2022-04-08 12:10:49 +02:00
sebaschi
ce5723c3e9 Correcions in CentralServerData: wherever a Client object wasa expected has been changed to expect a ClientHandler object. This is because the server sees clients via ClientHandlers but has no access to Client objects.
Lobby: Field "admin" added which is a ClientHandler type object. This represents who started the game and, for the phase before the gameplay starts, controls relevant functions.
2022-04-08 12:08:38 +02:00