From 191251b0a8e866e00805de026d3ea484608de2c6 Mon Sep 17 00:00:00 2001 From: sebaschi <74497638+sebaschi@users.noreply.github.com> Date: Mon, 4 Apr 2022 13:42:01 +0200 Subject: [PATCH] Extended CentralServerData & GameSessionData with Sets & Maps that might be usefull. --- .../cs108/sebaschi/CentralServerData.java | 21 ++++++++++++++++++- .../dbis/cs108/sebaschi/GameSessionData.java | 21 +++++++++++++++++++ 2 files changed, 41 insertions(+), 1 deletion(-) diff --git a/src/main/java/ch/unibas/dmi/dbis/cs108/sebaschi/CentralServerData.java b/src/main/java/ch/unibas/dmi/dbis/cs108/sebaschi/CentralServerData.java index 3293e61..04c2d08 100644 --- a/src/main/java/ch/unibas/dmi/dbis/cs108/sebaschi/CentralServerData.java +++ b/src/main/java/ch/unibas/dmi/dbis/cs108/sebaschi/CentralServerData.java @@ -1,10 +1,29 @@ package ch.unibas.dmi.dbis.cs108.sebaschi; +import ch.unibas.dmi.dbis.cs108.BudaLogConfig; +import ch.unibas.dmi.dbis.cs108.gamelogic.Game; +import ch.unibas.dmi.dbis.cs108.multiplayer.client.Client; +import java.net.Socket; +import java.util.Map; +import java.util.Set; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; + /** * This Class Represents an Object containing different Maps, Lists and Sets wherein a server object * can find all needed data. An instance of this object can also be passed to other class-objects uf - * they need the same data. + * they need the same data. This Class is used to query for information in collections. */ public class CentralServerData { + public static final Logger LOGGER = LogManager.getLogger(); + public static final BudaLogConfig l = new BudaLogConfig(LOGGER); + + private Set clientsOnServer; + private Set activeGames; + private Set gamesOpenToJoin; + + private Map clientSocketMap; + private Map socketClientMap; + private Map gameClientMap; } diff --git a/src/main/java/ch/unibas/dmi/dbis/cs108/sebaschi/GameSessionData.java b/src/main/java/ch/unibas/dmi/dbis/cs108/sebaschi/GameSessionData.java index 621dbfe..e219a81 100644 --- a/src/main/java/ch/unibas/dmi/dbis/cs108/sebaschi/GameSessionData.java +++ b/src/main/java/ch/unibas/dmi/dbis/cs108/sebaschi/GameSessionData.java @@ -1,5 +1,26 @@ package ch.unibas.dmi.dbis.cs108.sebaschi; +import ch.unibas.dmi.dbis.cs108.BudaLogConfig; +import ch.unibas.dmi.dbis.cs108.gamelogic.klassenstruktur.Ghost; +import ch.unibas.dmi.dbis.cs108.gamelogic.klassenstruktur.Passenger; +import java.io.BufferedOutputStream; +import java.util.Set; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; + +/** + * Class that shall contain all non-game logik information + * relevant to a game session needed for client-server and client-client + * communication. + */ public class GameSessionData { + public static final Logger LOGGER = LogManager.getLogger(); + public static final BudaLogConfig l = new BudaLogConfig(LOGGER); + + CentralServerData globalData; + + Set passengers; + Set clientOutputStreams; + Set ghosts; }