Jackalope\ObjectManager::performNodeRemove PHP Method

performNodeRemove() protected method

Remove the item at absPath from local cache and keep information for undo.
See also: ObjectManager::removeItem()
protected performNodeRemove ( string $absPath, PHPCR\NodeInterface $node, boolean $sessionOperation = true, $cascading = false )
$absPath string The absolute path of the item that is being removed. Note that contrary to removeItem(), this path is the full path for a property too.
$node PHPCR\NodeInterface The item that is being removed
$sessionOperation boolean whether the node removal should be dispatched immediately or needs to be scheduled in the operations log
    protected function performNodeRemove($absPath, NodeInterface $node, $sessionOperation = true, $cascading = false)
    {
        if (!$sessionOperation && !$cascading) {
            $this->transport->deleteNodeImmediately($absPath);
        }
        unset($this->objectsByUuid[$node->getIdentifier()], $this->objectsByPath['Node'][$absPath]);
        if ($sessionOperation) {
            // keep reference to object in case of refresh
            $operation = new RemoveNodeOperation($absPath, $node);
            $this->nodesRemove[$absPath] = $operation;
            if (!$cascading) {
                $this->operationsLog[] = $operation;
            }
        }
    }