servers = $servers; $this->rooms = CommunityServer::enumerate_rooms($servers); } /** * @var CommunityServer[] $servers */ public array $servers; /** * @var CommunityRoom[] $rooms */ public array $rooms; public static function read_from_file(string $rooms_file): CommunityDatabase { $servers = CommunityServer::read_servers_from_file($rooms_file); return new CommunityDatabase($servers); } public function fetch_assets(): CommunityDatabase { CommunityRoom::fetch_assets($this->rooms); return $this; } public function unpack() { return [$this->rooms, $this->servers]; } } ?>