Smile\ElasticsuiteCore\Search\Adapter\Elasticsuite\Request\Query\Builder\Boolean::buildQuery PHP Метод

buildQuery() публичный Метод

{@inheritDoc}
public buildQuery ( Smile\ElasticsuiteCore\Search\Request\QueryInterface $query )
$query Smile\ElasticsuiteCore\Search\Request\QueryInterface
    public function buildQuery(QueryInterface $query)
    {
        $searchQuery = [];
        $clauses = [self::QUERY_CONDITION_MUST, self::QUERY_CONDITION_NOT, self::QUERY_CONDITION_SHOULD];
        foreach ($clauses as $clause) {
            $queries = array_map([$this->parentBuilder, 'buildQuery'], $this->getQueryClause($query, $clause));
            $searchQuery[$clause] = array_filter($queries);
        }
        $searchQuery['minimum_should_match'] = $query->getMinimumShouldMatch();
        $searchQuery['boost'] = $query->getBoost();
        if ($query->isCached()) {
            $searchQuery['_cache'] = true;
        }
        return ['bool' => $searchQuery];
    }