Package net.targetr.rc.room
package net.targetr.rc.room
Room membership, command routing and room lifecycle management.
RoomManager owns the active rooms, coordinates client
attachment and performs background maintenance and empty-room expiry. It
provides room lookups, aggregate client counts and room-state snapshots, and
closes client connections during server shutdown.
Room manages client membership and capacity,
selects command recipients by app or client identifier and broadcasts through
the client delivery API. Its maintenance removes inactive clients and queues
membership updates for remaining clients. Membership locks coordinate client
attachment with expiry so an expired room cannot accept new clients.
- Author:
- Dr Michael Gardiner
-
ClassDescriptionAllows multiple clients in the same room to communicate.Maintains a map of active rooms.The room and client established by one atomic attachment operation.