public function applyOptimizers(ContainerConfigurationInterface $containerConfiguration, QueryInterface $query)
    {
        $functions = $this->getFunctions($containerConfiguration);

        if (isset($this->filters[$containerConfiguration->getName()])) {
            $optimizerIds = $this->filters[$containerConfiguration->getName()]->getOptimizerIds() ?? array_keys($functions);
            $functions = array_intersect_key($functions, array_flip($optimizerIds));
        }

        return $this->applyFunctions($query, $functions);
    }
public function applyOptimizers(ContainerConfigurationInterface $containerConfiguration, QueryInterface $query)
    {
        $functions = $this->getFunctions($containerConfiguration);

        if (isset($this->filters[$containerConfiguration->getName()])) {
            $optimizerIds = $this->filters[$containerConfiguration->getName()]->getOptimizerIds() ?? array_keys($functions);
            $functions = array_intersect_key($functions, array_flip($optimizerIds));
        }

        return $this->applyFunctions($query, $functions);
    }
public function applyOptimizers ( ContainerConfigurationInterface $ containerConfiguration , QueryInterface $ query ) { $ functions = $ this -> getFunctions ( $ containerConfiguration ) ; if ( isset ( $ this -> filters [ $ containerConfiguration -> getName ( ) ] ) ) { $ optimizerIds = $ this -> filters [ $ containerConfiguration -> getName ( ) ] -> getOptimizerIds ( ) ?? array_keys ( $ functions ) ; $ functions = array_intersect_key ( $ functions , array_flip ( $ optimizerIds ) ) ; } return $ this -> applyFunctions ( $ query , $ functions ) ; }
Returns query.

@param ContainerConfigurationInterface $containerConfiguration Container configuration.
@param QueryInterface                  $query                  Query.

@return QueryInterface
Returns query .