Class RoomManager

java.lang.Object
net.targetr.rc.RoomManager

public class RoomManager extends Object
Maintains a map of active rooms.
Author:
Dr Michael Gardiner
  • Method Details

    • get

      public static RoomManager get()
      Retrieves the singleton RoomManager instance.
      Returns:
      the room manager
    • getRoom

      public Room getRoom(ClientRequest req)
      Retrieves an existing room given a client request.
      Parameters:
      req - the incoming client request
      Returns:
      the associated Room instance
    • getRoom

      public Room getRoom(String roomId)
      Retrieves a room, or creates a new one if it does not exist.
      Parameters:
      roomId - the requested room
      Returns:
      the associated Room instance
    • getRoomCount

      public int getRoomCount()
      Gets the total number of active rooms.
      Returns:
      the room count
    • getLiveClientCount

      public int getLiveClientCount()
      Gets the total aggregate number of live clients in all rooms.
      Returns:
      the total client count
    • getState

      public Map<String,Object> getState()
      Aggregates state representations from all active rooms.
      Returns:
      a map organizing room states by their roomIds.
    • closeAll

      public void closeAll()
      Forcefully closes all network connections currently established to all rooms. Designed to be called during application shutdown.