Class WsConnectionManager

java.lang.Object
com.tnsai.server.ws.WsConnectionManager

public final class WsConnectionManager extends Object
Tracks active WebSocket connections per session. Thread-safe — multiple CLI/IDE clients can connect to the same session.
  • Constructor Details

    • WsConnectionManager

      public WsConnectionManager(com.fasterxml.jackson.databind.ObjectMapper objectMapper)
  • Method Details

    • addConnection

      public void addConnection(String sessionId, io.javalin.websocket.WsContext ctx)
    • removeConnection

      public void removeConnection(io.javalin.websocket.WsContext ctx)
    • getSessionId

      public String getSessionId(io.javalin.websocket.WsContext ctx)
    • hasConnectionsFor

      public boolean hasConnectionsFor(String sessionId)
      Returns true if the given session still has at least one registered connection.
    • broadcast

      public void broadcast(String sessionId, WsProtocol.ServerEvent event)
    • hasActiveConnections

      public boolean hasActiveConnections()
    • getActiveConnectionCount

      public int getActiveConnectionCount()
    • getActiveSessions

      public Set<String> getActiveSessions()