Neos.ContentRepository/Classes/Domain/Repository/NodeDataRepository.php
public function findByPathWithoutReduce($path, Workspace $workspace, $includeRemovedNodes = false, $recursive = false)
    {
        $path = strtolower($path);
        $workspaces = $this->collectWorkspaceAndAllBaseWorkspaces($workspace);

        $queryBuilder = $this->createQueryBuilder($workspaces);
        $this->addPathConstraintToQueryBuilder($queryBuilder, $path, $recursive);

        $query = $queryBuilder->getQuery();
        $foundNodes = $query->getResult();
        // Consider materialized, but not yet persisted nodes
        foreach ($this->addedNodes as $addedNode) {
            if (($addedNode->getPath() === $path || ($recursive && NodePaths::isSubPathOf($path, $addedNode->getPath()))) && in_array($addedNode->getWorkspace(), $workspaces)) {
                $foundNodes[] = $addedNode;
            }
        }

        $foundNodes = $this->reduceNodeVariantsByWorkspaces($foundNodes, $workspaces);
        if ($includeRemovedNodes === false) {
            $foundNodes = $this->withoutRemovedNodes($foundNodes);
        }

        return $foundNodes;
    }
public function findByPathWithoutReduce($path, Workspace $workspace, $includeRemovedNodes = false, $recursive = false)
    {
        $path = strtolower($path);
        $workspaces = $this->collectWorkspaceAndAllBaseWorkspaces($workspace);

        $queryBuilder = $this->createQueryBuilder($workspaces);
        $this->addPathConstraintToQueryBuilder($queryBuilder, $path, $recursive);

        $query = $queryBuilder->getQuery();
        $foundNodes = $query->getResult();
        // Consider materialized, but not yet persisted nodes
        foreach ($this->addedNodes as $addedNode) {
            if (($addedNode->getPath() === $path || ($recursive && NodePaths::isSubPathOf($path, $addedNode->getPath()))) && in_array($addedNode->getWorkspace(), $workspaces)) {
                $foundNodes[] = $addedNode;
            }
        }

        $foundNodes = $this->reduceNodeVariantsByWorkspaces($foundNodes, $workspaces);
        if ($includeRemovedNodes === false) {
            $foundNodes = $this->withoutRemovedNodes($foundNodes);
        }

        return $foundNodes;
    }
public function findByPathWithoutReduce ( $ path , Workspace $ workspace , $ includeRemovedNodes = false , $ recursive = false ) { $ path = strtolower ( $ path ) ; $ workspaces = $ this -> collectWorkspaceAndAllBaseWorkspaces ( $ workspace ) ; $ queryBuilder = $ this -> createQueryBuilder ( $ workspaces ) ; $ this -> addPathConstraintToQueryBuilder ( $ queryBuilder , $ path , $ recursive ) ; $ query = $ queryBuilder -> getQuery ( ) ; $ foundNodes = $ query -> getResult ( ) ; // Consider materialized, but not yet persisted nodes foreach ( $ this -> addedNodes as $ addedNode ) { if ( ( $ addedNode -> getPath ( ) === $ path || ( $ recursive && NodePaths :: isSubPathOf ( $ path , $ addedNode -> getPath ( ) ) ) ) && in_array ( $ addedNode -> getWorkspace ( ) , $ workspaces ) ) { $ foundNodes [ ] = $ addedNode ; } } $ foundNodes = $ this -> reduceNodeVariantsByWorkspaces ( $ foundNodes , $ workspaces ) ; if ( $ includeRemovedNodes === false ) { $ foundNodes = $ this -> withoutRemovedNodes ( $ foundNodes ) ; } return $ foundNodes ; }
Find all node data in a path matching the given workspace hierarchy

Internal method, used by Node::setPath

@param string $path
@param Workspace $workspace
@param boolean $includeRemovedNodes Should removed nodes be included in the result (defaults to false)
@param boolean $recursive
@return array<NodeData> Node data reduced by workspace but with all existing content dimension variants, includes removed nodes
Find all node data in a path matching the given workspace hierarchy