public buildQuery ( Smile\ElasticsuiteCore\Search\Request\QueryInterface $query ) : array | ||
$query | Smile\ElasticsuiteCore\Search\Request\QueryInterface | Query to be built. |
return | array |
public function buildQuery(QueryInterface $query)
{
$searchQuery = false;
$builder = $this->getBuilder($query);
if ($builder !== null) {
$searchQuery = $builder->buildQuery($query);
}
return $searchQuery;
}
/** * Build the aggregation. * * @param BucketInterface $bucket Term bucket. * * @return array */ public function buildBucket(BucketInterface $bucket) { $filters = []; foreach ($bucket->getQueries() as $value => $query) { $filters[$value] = $this->queryBuilder->buildQuery($query); } return ['filters' => ['filters' => $filters]]; }