Commit Graph

207 Commits

Author SHA1 Message Date
Yannik Bretschneider 2acf340482 feat: changed implementation to fixed thread pool 2021-06-06 17:45:41 +02:00
Yannik Bretschneider 21bfac7d75 feat: implemented Character selection and relaying to lobby 2021-06-06 17:45:16 +02:00
Yannik Bretschneider 7af0fd40a1 feat: implemented UserManager message forwarding 2021-06-06 17:44:53 +02:00
Yannik Bretschneider e689248f9e fix: fixed equals in Lobby 2021-06-06 17:44:28 +02:00
Yannik Bretschneider 0c8dd3f1a8 test: completed UserManager test 2021-06-06 17:44:11 +02:00
Yannik Bretschneider 7a27ca8ecf feat: added max lobbies parameter 2021-06-06 17:43:55 +02:00
Yannik Bretschneider a6ecf6fa30 refactor: deleted MessageRelay class 2021-06-06 17:43:29 +02:00
Yannik Bretschneider cc45c821b7 fix: moved LobbyRunner from tests into main 2021-06-06 15:11:17 +02:00
Yannik Bretschneider ef8cd1773a feat: implemented LobbyRunner 2021-06-06 14:11:33 +02:00
Yannik Bretschneider cbdb2017b8 refactor: removed callback in constructor 2021-06-06 12:47:09 +02:00
Yannik Bretschneider 07d440bfac refactor: removed callbacks and generated equals and hashcode for Lobby and LobbyConnection 2021-06-06 12:46:45 +02:00
Yannik Bretschneider 1839341734 feat: adjusted singleton pattern in MarvelousServer 2021-06-06 03:50:31 +02:00
Yannik Bretschneider 0ee264502c feat: converted UserManager to singleton object 2021-06-06 03:50:31 +02:00
Yannik Bretschneider 7db692f790 feat: partially implemented not yet refactored lobbyManager 2021-06-06 03:50:31 +02:00
Yannik Bretschneider e7a8f0e1e4 feat: implemented lobby creation and general management 2021-06-06 03:50:31 +02:00
Yannik Bretschneider 8b2805fcf1 feat: improved Server mainclass 2021-06-06 03:50:31 +02:00
Richard Reiber bbaeb63bb6 doc: added documentation for Lobby classes 2021-06-06 01:51:39 +02:00
Richard Reiber 7f512400df test: added TimeoutWarning and generateWin tests 2021-06-06 00:49:53 +02:00
Richard Reiber c1cd3fba66 fix: updated timeout-method for spectator-error 2021-06-06 00:49:09 +02:00
Yannik Bretschneider 6a8de34c67 refactor: extracted UpdateTimer method 2021-06-06 00:39:15 +02:00
Richard Reiber 4e66a4eb24 test: created test for Lobby 2021-06-06 00:09:04 +02:00
Yannik Bretschneider 6eff0a4813 refactor: extracted updateTimer method 2021-06-06 00:08:08 +02:00
Yannik Bretschneider 4e2e0bd622 fix: fixed UserManagerTest 2021-06-05 23:48:16 +02:00
Richard Reiber 4dec57d483 test: created test for TurnTimer 2021-06-05 23:28:17 +02:00
Yannik Bretschneider 0088a4b3e9 feat: broadcast GamestateEvents after initialization 2021-06-05 23:27:40 +02:00
Yannik Bretschneider bc7dcf4985 build: added Mockito inline dependency 2021-06-05 23:27:15 +02:00
Yannik Bretschneider a0c26bd39d fix: fixed DisconnectSegmentTest according to Lobby API changes 2021-06-05 23:17:17 +02:00
Yannik Bretschneider 2f2bbea213 changed LobbyConnection construction, and changed Lobby and DisconnectSegment according to new API 2021-06-05 23:14:08 +02:00
Yannik Bretschneider c5e8bd6ece feat: implemented handshake and sendMessage methods properly 2021-06-05 23:14:08 +02:00
Yannik Bretschneider 20bce266b1 feat: made config files globally avaliable via Server 2021-06-05 23:14:08 +02:00
Yannik Bretschneider b0a37d63f8 feat: implemented RandomWordGenerator 2021-06-05 23:14:08 +02:00
Yannik Bretschneider 11559d1f56 test: disabled useless server test 2021-06-05 23:14:08 +02:00
Yannik Bretschneider ae546372db build: updated mockito dependency to the proper one 2021-06-05 23:14:07 +02:00
Richard Reiber 9fcb1aa009 test: created test for RequestGameStateSegment 2021-06-05 22:39:40 +02:00
Richard Reiber a61409a822 test: created test for Pipeline 2021-06-05 22:22:56 +02:00
Richard Reiber b4d547a6d3 feat: added contains to Pipeline 2021-06-05 22:22:24 +02:00
Richard Reiber ece6ef133c refactor: generated equals and hashcode for Packet 2021-06-05 22:21:44 +02:00
Richard Reiber 8ee3e22dab test: added processRequests-Tests to PauseSegmentTest 2021-06-05 21:17:51 +02:00
Richard Reiber 3f14019a83 test: updated PacketTest with getOriginTest() 2021-06-05 20:49:26 +02:00
Richard Reiber f0bdee28c3 test: added PacketTest 2021-06-05 20:44:15 +02:00
Richard Reiber 552bab8d93 test: added DisconnectSegmentTest 2021-06-05 20:30:48 +02:00
Yannik Bretschneider f8428fea3e refactor: changed public final variables to getters 2021-06-05 19:44:09 +02:00
Yannik Bretschneider 2d27022655 feat: partially implemented LobbyManager and MessageRelay 2021-06-05 19:40:28 +02:00
Yannik Bretschneider 02b2a58cce feat: partially implemented GameAssignment 2021-06-05 19:40:10 +02:00
Yannik Bretschneider 7ce16fd81f test: partially TDDed UserManager 2021-06-05 19:38:28 +02:00
Yannik Bretschneider 15eb18e79a fix: fixed Participant constructor 2021-06-05 19:37:41 +02:00
Yannik Bretschneider ab4e9aa42c feat: added name to Participant 2021-06-05 16:47:57 +02:00
Yannik Bretschneider e318b02db7 feat: implemented proper validation of configs 2021-06-05 16:47:33 +02:00
Yannik Bretschneider 93bd3fe99d fix: fixed listen address of the server from localhost to 0.0.0.0 2021-06-05 04:15:31 +02:00
Yannik Bretschneider ddba210025 feat: partial implementation of UserManager 2021-06-05 01:34:53 +02:00
Yannik Bretschneider fc37aca05a build: added dependency to enable websocket server logging 2021-06-05 00:54:45 +02:00
Yannik Bretschneider 903719e254 refactor: made WebSocket non-final for reconnect modularity 2021-06-05 00:54:22 +02:00
Yannik Bretschneider 69f77a1423 feat: partially implemented net connection and handshake 2021-06-05 00:53:55 +02:00
Yannik Bretschneider 051c91f9de fix: made argument parsing standard compliant 2021-06-05 00:53:35 +02:00
Yannik Bretschneider bd234a7849 improved mainclass Server, and started a server for testing 2021-06-05 00:53:10 +02:00
Yannik Bretschneider 551c661f38 build: added sonarqube plugin to server build.gradle 2021-06-04 20:30:29 +02:00
Yannik Bretschneider c3f3fc0011 doc: removed explicit thread names from logging messages 2021-06-04 19:55:21 +02:00
Yannik Bretschneider e1a3e05d28 doc: added documentation comment for Server mainclass 2021-06-04 19:54:47 +02:00
Yannik Bretschneider b37737f073 feat: created main, and implemented log-level setting and config loading 2021-06-04 18:46:44 +02:00
Yannik Bretschneider d534897a5b feat: implemented command line argument parsing 2021-06-04 18:46:05 +02:00
Yannik Bretschneider 238f0beea3 build: added console argument parser dependency 2021-06-04 18:06:13 +02:00
Yannik Bretschneider 598d3a8df3 refactor: changed spectators to final in LobbyConnection 2021-06-04 15:26:19 +02:00
Yannik Bretschneider d4460e6c0f feat: created placeholder main 2021-06-04 15:26:19 +02:00
Yannik Bretschneider c0aac8cd31 added jar task to build.gradle 2021-06-04 15:26:18 +02:00
Richard Reiber c9fa49e10f doc: updated Logger messages 2021-06-04 14:40:51 +02:00
Yannik Bretschneider 9ec801690f doc: added thread name to some logging messages 2021-06-04 14:27:30 +02:00
Yannik Bretschneider 207f70683b feat: TurnTimer implemented properly 2021-06-04 14:26:45 +02:00
Yannik Bretschneider 68b078a90c test: fixed GameStateSegmentTest to work with new API 2021-06-04 00:00:06 +02:00
Yannik Bretschneider fecb377c9f build: changed 8 parallel forks to 1 because speed 2021-06-03 23:41:54 +02:00
Yannik Bretschneider 7f4e5cc1cb refactor: used ParticipantType from Gamelib 2021-06-03 23:40:17 +02:00
punchready c9ebc2c1c7 refactor: make use of new method supporting ArrayList 2021-06-03 03:40:30 +02:00
Yannik Bretschneider 6557e748af feat: updated lobby to pipeline-based model 2021-06-02 18:28:02 +02:00
Yannik Bretschneider 96f131e50c fix: fixed PauseSegment and DisconnectSegment, and added logging to all segments 2021-06-02 18:27:39 +02:00
Yannik Bretschneider 2380012d35 feat: implemented partial RoundTimer 2021-06-02 18:26:35 +02:00
Yannik Bretschneider 302fc5246d refactor: deleted now useless class PauseHandler 2021-06-02 17:52:20 +02:00
Yannik Bretschneider d27bc6326c test: fixed GameStateSegment test 2021-06-02 17:51:48 +02:00
Yannik Bretschneider 50bd0f2a19 fix: fixed problems arising from refactor 2021-06-02 17:51:39 +02:00
Yannik Bretschneider aecfcd2d42 doc: added logging 2021-06-02 17:51:23 +02:00
Yannik Bretschneider 30a8a03eb2 fix: fixed problems arising from Gamelib refactor 2021-06-02 17:01:59 +02:00
Yannik Bretschneider cb1f99814a feat: implemented wins and disconnects in Lobby 2021-06-01 18:07:43 +02:00
Yannik Bretschneider ffb37def47 feat: implemented utility methods for LobbyConnection 2021-06-01 17:59:29 +02:00
Yannik Bretschneider 2a4fc1cef0 feat: completed several segments 2021-06-01 17:57:05 +02:00
Yannik Bretschneider 1887a2c12d refactor: used proper method for checking requestType to ReqSegment 2021-06-01 15:28:59 +02:00
Yannik Bretschneider 0c2bc6cf6a feat: created packet class for pipelining 2021-06-01 15:26:30 +02:00
Yannik Bretschneider 74f3b86144 error: added todo to currently wrong GameInstance constructor 2021-06-01 15:26:09 +02:00
Yannik Bretschneider cd4e9f5e5e build: added tinylog dependency 2021-06-01 14:28:20 +02:00
Richard Reiber 6eb16a2514 update: added some Segments for Pipelining 2021-05-31 19:49:48 +02:00
punchready 68bbf07ac6 refactor: update Lobby for changes to the game library 2021-05-27 18:16:08 +02:00
Yannik Bretschneider ae64d51a73 refactor: renamed package names to be lowercase 2021-05-26 18:52:34 +02:00
Yannik Bretschneider 741f907348 feat: changed pipeline return type to optional for better clarity, and added comments 2021-05-26 13:57:47 +02:00
Yannik Bretschneider 5515478fe6 feat: implemented a pipelining system for the lobby to pipeline events through a number of segments for processing them 2021-05-19 20:59:59 +02:00
Yannik Bretschneider d2d9712b61 fix: fixed types in MessageRelay and LobbyConnection 2021-05-19 20:59:11 +02:00
Richard Reiber fcf43fcd83 wip: Request pipelining 2021-05-19 19:02:57 +02:00
Yannik Bretschneider 7a8857da0c feat: changed WebSockets to Participants, and created those 2021-05-19 13:12:14 +02:00
punchready 65e9e88f51 fix: replace duplicate class with ParticipantType 2021-05-18 18:49:33 +02:00
Yannik Bretschneider 89a75f982b feat: partial implementation of MessageRelay and LobbyConnection 2021-05-18 18:24:26 +02:00
Yannik Bretschneider ce71de5d25 test: created partial test prototype for MarvelousServer 2021-05-18 18:23:30 +02:00
punchready 0833976aca feat: add basic backbone for lobby 2021-05-18 18:11:52 +02:00
Yannik Bretschneider d306b2b736 feat: singleton MessageRelay and better prototype of LobbyManager 2021-05-18 16:57:03 +02:00
Yannik Bretschneider a4fd7c1ef5 fix: executed a gradle task that makes the project hopefully recognizable by the IDE 2021-05-05 20:59:02 +02:00
Yannik Bretschneider 0b3a3097e1 fix: changed GameState to proper class GameInstance in lobby 2021-05-05 18:58:24 +02:00
Yannik Bretschneider f5d565613a feat: added gamelib as submodule (slightly experimental but should work) and reconfigured Gradle 2021-05-05 18:31:29 +02:00
Richard Reiber c1bc8042ee Added a first Lobby Constructor.
Added Event/Request differentiation (as comments).
2021-05-05 12:35:51 +02:00
Richard Reiber f471b66eb6 Added a few Methods and test Version control. 2021-05-05 12:10:51 +02:00
Yannik Bretschneider 074276e664 fix: changed lists in MessageRelay to final 2021-04-29 20:30:02 +02:00
Yannik Bretschneider b4415fdb53 feat: starting point for the server, implemented LobbyConnection partially 2021-04-29 20:27:40 +02:00
Yannik Bretschneider 57f3b9abc5 feat: setup project properly 2021-04-29 17:28:24 +02:00