/** * Removes the specified property. * * If the node has a content object attached, the property will not be removed on * that object if it exists. * * @param string $propertyName Name of the property * @return void * @throws \TYPO3\TYPO3CR\Exception\NodeException if the node does not contain the specified property */ public function removeProperty($propertyName) { if (!$this->isNodeDataMatchingContext()) { $this->materializeNodeData(); } $this->nodeData->removeProperty($propertyName); $this->context->getFirstLevelNodeCache()->flush(); $this->emitNodeUpdated($this); }
/** * @test */ public function removePropertyDoesNotTouchAContentObject() { $this->inject($this->nodeData, 'persistenceManager', $this->createMock('TYPO3\\Flow\\Persistence\\PersistenceManagerInterface')); $className = uniqid('Test'); eval('class ' . $className . ' { public $title = "My Title"; }'); $contentObject = new $className(); $this->nodeData->setContentObject($contentObject); $this->nodeData->removeProperty('title'); $this->assertTrue($this->nodeData->hasProperty('title')); $this->assertEquals('My Title', $this->nodeData->getProperty('title')); }
/** * If AssetList contains only 1 file, and it's of type Audio, turn it into targetNodeType * * @param \TYPO3\TYPO3CR\Domain\Model\NodeData $node * @return void */ public function execute(\TYPO3\TYPO3CR\Domain\Model\NodeData $node) { $assets = $node->getProperty($this->sourcePropertyName); if (count($assets) === 1) { $asset = $assets[0]; if ($asset instanceof $this->assetType) { $nodeType = $this->nodeTypeManager->getNodeType($this->targetNodeType); $node->setNodeType($nodeType); $node->setProperty($this->targetPropertyName, $asset); $node->removeProperty($this->sourcePropertyName); echo "Converted AssetList with asset of type" . $this->assetType . " to node of type " . $this->targetNodeType . "\n"; } } }
/** * Remove the property from the given node. * * @param NodeData $node * @return void */ public function execute(NodeData $node) { $node->removeProperty($this->propertyName); }
/** * Renames the configured property to the new name. * * @param \TYPO3\TYPO3CR\Domain\Model\NodeData $node * @return void */ public function execute(\TYPO3\TYPO3CR\Domain\Model\NodeData $node) { $node->setProperty($this->newPropertyName, $node->getProperty($this->oldPropertyName)); $node->removeProperty($this->oldPropertyName); }
/** * Remove the property from the given node. * * @param \TYPO3\TYPO3CR\Domain\Model\NodeData $node * @return void */ public function execute(\TYPO3\TYPO3CR\Domain\Model\NodeData $node) { $node->removeProperty($this->propertyName); }
/** * Renames the configured property to the new name. * * @param NodeData $node * @return void */ public function execute(NodeData $node) { $node->setProperty($this->newPropertyName, $node->getProperty($this->oldPropertyName)); $node->removeProperty($this->oldPropertyName); }