| Current File : /home/jvzmxxx/wiki/vendor/ruflin/elastica/lib/Elastica/Query/TopChildren.php |
<?php
namespace Elastica\Query;
use Elastica\Query as BaseQuery;
/**
* Runs the child query with an estimated hits size, and out of the hit docs, aggregates it into parent docs.
*
* @author Wu Yang <darkyoung@gmail.com>
*
* @link https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-top-children-query.html
*/
class TopChildren extends AbstractQuery
{
/**
* Construct topChildren query.
*
* @param string|\Elastica\Query|\Elastica\Query\AbstractQuery $query
* @param string $type Parent document type
*/
public function __construct($query, $type = null)
{
$this->setQuery($query);
$this->setType($type);
}
/**
* Sets query object.
*
* @param string|\Elastica\Query|\Elastica\Query\AbstractQuery $query
*
* @return $this
*/
public function setQuery($query)
{
return $this->setParam('query', BaseQuery::create($query));
}
/**
* Set type of the parent document.
*
* @param string $type Parent document type
*
* @return $this
*/
public function setType($type)
{
return $this->setParam('type', $type);
}
}