Commit Graph

551 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