collection = $collection; } /** * @param Node $node */ public function move($node) { $this->targetNode = $node; } /** * @param string $name The name of the node after which the target node should be inserted. */ public function after($name) { $this->collection->remove($this->targetNode->getName()); $this->collection->insertAfter($name, $this->targetNode); } /** * @param string $name The name of the node before which the target node should be inserted. */ public function before($name) { $this->collection->remove($this->targetNode->getName()); $this->collection->insertBefore($name, $this->targetNode); } }