Exemplo n.º 1
0
 /**
  * Processes a list of results
  * @param SolrObject $rawResults the raw results to process
  * @param ASolrResultList $list the list of results
  */
 protected function processResults($rawResults, $list = null)
 {
     if ($list === null) {
         $list = new ASolrResultList();
     }
     $modelClass = $this->_modelClass;
     $highlighting = isset($this->_solrObject->highlighting);
     if ($highlighting) {
         $highlights = array_values((array) $this->_solrObject->highlighting);
     }
     if ($rawResults) {
         foreach ($rawResults as $n => $row) {
             $result = $modelClass::model()->populateRecord($row);
             /* @var ASolrDocument $result */
             $result->setPosition($n + $this->_criteria->getOffset());
             $result->setSolrResponse($this);
             if ($highlighting && isset($highlights[$n])) {
                 $result->setHighlights($highlights[$n]);
             }
             $list->add($result);
         }
     }
     return $list;
 }