dbConn = $dbConn; $this->cache = new DbStatementCache($dbConn); } public function getServers( ?bool $deleted = null ): iterable { $hasDeleted = $deleted !== null; $query = 'SELECT server_id, server_name, server_details, server_java_address, server_java_version, server_bedrock_address, server_bedrock_version, UNIX_TIMESTAMP(server_created), UNIX_TIMESTAMP(server_deleted) FROM servers'; if($hasDeleted) $query .= sprintf(' WHERE server_deleted %s NULL', $deleted ? 'IS NOT ' : 'IS'); $query .= ' ORDER BY server_order'; $stmt = $this->cache->get($query); $stmt->execute(); return $stmt->getResult()->getIterator(ServerInfo::fromResult(...)); } }