getAggregations() public method

Returns all aggregation results.
public getAggregations ( ) : array
return array
Ejemplo n.º 1
0
 /**
  * @param \Elastica\ResultSet $searchResult
  * @param array $requestParameters
  *
  * @return array
  */
 protected function formatSearchResult(ResultSet $searchResult, array $requestParameters)
 {
     $facetData = [];
     $facetConfig = $this->getFactory()->getSearchConfig()->getFacetConfigBuilder();
     $aggregations = $searchResult->getAggregations();
     foreach ($facetConfig->getAll() as $facetName => $facetConfigTransfer) {
         $fieldName = $facetConfigTransfer->getFieldName();
         if (!isset($aggregations[$fieldName])) {
             continue;
         }
         $extractor = $this->getFactory()->createAggregationExtractorFactory()->create($facetConfigTransfer);
         $aggregation = $this->getAggregationRawData($aggregations, $facetConfigTransfer);
         $facetData[$facetName] = $extractor->extractDataFromAggregations($aggregation, $requestParameters);
     }
     return $facetData;
 }
 /**
  * @param ResultSet $result
  * @return bool
  */
 protected function collectAggregations(ResultSet $result)
 {
     if (!$result->hasAggregations()) {
         return false;
     }
     $this->aggregations = $result->getAggregations();
     return true;
 }