protected function createCurrentSiteInfo()
    {
        while ( $this->queryResult->valid() )
        {
            $data       = $this->queryResult->current();
            $current    = $this->createSiteInfo( $data );
            $schema     = $current->getSchema();

            if ( ! empty( $this->queriedSchemas[$schema] ) )
            {
                $this->queryResult->next();
            }
            else
            {
                $this->queriedSchemas[$schema] = true;
                return $this->setSiteInfo( $this->currentSiteInfo = $current );
            }
        }

        $this->currentSiteInfo = null;
        return null;
    }