/** * Change the property on the given node. * * @param \TYPO3\TYPO3CR\Domain\Model\NodeData $nodeData * @return void */ public function execute(NodeData $nodeData) { $dimensions = $nodeData->getDimensions(); if ($dimensions !== array()) { $hasChanges = false; $newDimensions = array(); foreach ($dimensions as $dimension) { /** @var NodeDimension $dimension */ if ($dimension->getName() === $this->oldDimensionName) { $dimension = new NodeDimension($dimension->getNodeData(), $this->newDimensionName, $dimension->getValue()); $hasChanges = true; } else { $dimension = new NodeDimension($dimension->getNodeData(), $dimension->getName(), $dimension->getValue()); } $newDimensions[] = $dimension; } if ($hasChanges) { $nodeData->setDimensions($newDimensions); } } }