getPipeline() public method

Returns the assembled aggregation pipeline
public getPipeline ( ) : array
return array
Beispiel #1
0
 /**
  * Returns the assembled aggregation pipeline
  *
  * For pipelines where the first stage is a $geoNear stage, it will apply
  * the document filters and discriminator queries to the query portion of
  * the geoNear operation. For all other pipelines, it prepends a $match stage
  * containing the required query.
  *
  * @return array
  */
 public function getPipeline()
 {
     $pipeline = parent::getPipeline();
     if ($this->getStage(0) instanceof GeoNear) {
         $pipeline[0]['$geoNear']['query'] = $this->applyFilters($pipeline[0]['$geoNear']['query']);
     } else {
         $matchStage = $this->applyFilters([]);
         if ($matchStage !== []) {
             array_unshift($pipeline, ['$match' => $matchStage]);
         }
     }
     return $pipeline;
 }
Beispiel #2
0
 /**
  * Returns the assembled aggregation pipeline
  *
  * @return array
  */
 public function getPipeline()
 {
     return $this->builder->getPipeline();
 }