RoomManager.ts
575 Bytes
import { Room } from "./Room";
export class RoomManager {
private rooms: Map<string, Room>;
constructor() {
this.rooms = new Map<string, Room>();
}
public create(name: string, maxConnections: number): Room {
const room = new Room(name, maxConnections);
this.rooms.set(name, room);
return room;
}
public get(uuid: string): Room | undefined {
return this.rooms.get(uuid);
}
public delete(uuid: string): void {
const room = this.get(uuid);
if (room !== undefined) {
room.close();
this.rooms.delete(uuid);
}
}
}