Neos\ContentRepository\Migration\Transformations\SetDimensions::execute PHP Метод

execute() публичный Метод

Change the property on the given node.
public execute ( NodeData $node ) : void
$node Neos\ContentRepository\Domain\Model\NodeData
Результат void
    public function execute(NodeData $node)
    {
        $dimensions = array();
        foreach ($this->dimensionValues as $dimensionName => $dimensionConfiguration) {
            foreach ($dimensionConfiguration as $dimensionValues) {
                if (is_array($dimensionValues)) {
                    foreach ($dimensionValues as $dimensionValue) {
                        $dimensions[] = new NodeDimension($node, $dimensionName, $dimensionValue);
                    }
                } else {
                    $dimensions[] = new NodeDimension($node, $dimensionName, $dimensionValues);
                }
            }
        }
        if ($this->addDefaultDimensionValues === true) {
            $configuredDimensions = $this->contentDimensionRepository->findAll();
            foreach ($configuredDimensions as $configuredDimension) {
                if (!isset($this->dimensionValues[$configuredDimension->getIdentifier()])) {
                    $dimensions[] = new NodeDimension($node, $configuredDimension->getIdentifier(), $configuredDimension->getDefault());
                }
            }
        }
        $node->setDimensions($dimensions);
    }