LdapTools\Hydrator\OperationHydrator::hydrateQueryOperation PHP Method

hydrateQueryOperation() protected method

protected hydrateQueryOperation ( QueryOperation $operation )
$operation LdapTools\Operation\QueryOperation
    protected function hydrateQueryOperation(QueryOperation $operation)
    {
        $operation->setAttributes($this->getAttributesToLdap($operation->getAttributes(), true, $this->schema, $this->alias));
        // Only want it set if it wasn't explicitly set...
        if ($this->schema && is_null($operation->getBaseDn())) {
            $operation->setBaseDn($this->schema->getBaseDn());
        }
        // Empty check instead of null due to the way the BaseDN is set for a RootDSE query...
        if (!empty($operation->getBaseDn()) && ParameterResolver::hasParameters($operation->getBaseDn())) {
            $this->setDefaultParameters();
            $operation->setBaseDn($this->resolveParameters(['baseDn' => $operation->getBaseDn()])['baseDn']);
        }
        // If null then we default to the domain config or the explicitly set value...
        if ($this->schema && !is_null($this->schema->getUsePaging())) {
            $operation->setUsePaging($this->schema->getUsePaging());
        }
        if ($this->schema && !is_null($this->schema->getScope())) {
            $operation->setScope($this->schema->getScope());
        }
        if ($this->schema) {
            $operation->addControl(...$this->schema->getControls());
        }
        if ($operation->getFilter() instanceof OperatorCollection) {
            $this->convertValuesToLdap($operation->getFilter());
            $operation->setFilter($operation->getFilter()->toLdapFilter($this->alias));
        }
    }