diff --git a/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/network/sessions/SessionManager.java b/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/network/sessions/SessionManager.java index 6dfe245..013680b 100644 --- a/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/network/sessions/SessionManager.java +++ b/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/network/sessions/SessionManager.java @@ -5,6 +5,8 @@ import java.util.Map; import java.util.concurrent.ConcurrentHashMap; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; + +import ch.unibas.dmi.dbis.cs108.casono.server.network.events.DisconnectEvent; import ch.unibas.dmi.dbis.cs108.casono.server.network.events.EventBus; import ch.unibas.dmi.dbis.cs108.casono.server.network.transport.TransportLayer; @@ -70,6 +72,17 @@ public class SessionManager { } } + /** + * Handler for the DisconnectEvent + * + * @param id of the session that disconnected + */ + public void onDisconnect(DisconnectEvent event) { + logger.debug("Recieved DisconnectEvent event for session {}", event.sessionId().value()); + + disconnect(event.sessionId()); + } + /** * Removes a session by its ID. *