FOSElasticaBundle/Paginator/RawPartialResults.php
Luis Cordova cacb40286c clean ups
2013-11-20 08:11:15 -05:00

52 lines
959 B
PHP

<?php
namespace FOS\ElasticaBundle\Paginator;
use Elastica\ResultSet;
use Elastica\Result;
/**
* Raw partial results transforms to a simple array
*/
class RawPartialResults implements PartialResultsInterface
{
protected $resultSet;
/**
* @param ResultSet $resultSet
*/
public function __construct(ResultSet $resultSet)
{
$this->resultSet = $resultSet;
}
/**
* {@inheritDoc}
*/
public function toArray()
{
return array_map(function(Result $result) {
return $result->getSource();
}, $this->resultSet->getResults());
}
/**
* {@inheritDoc}
*/
public function getTotalHits()
{
return $this->resultSet->getTotalHits();
}
/**
* {@inheritDoc}
*/
public function getFacets()
{
if ($this->resultSet->hasFacets()) {
return $this->resultSet->getFacets();
}
return null;
}
}