12345678910111213141516171819202122232425262728293031323334353637383940414243 |
- <?php
- /**
- * Copyright © Magento, Inc. All rights reserved.
- * See COPYING.txt for license details.
- */
- declare(strict_types=1);
- namespace Magento\Indexer\Model;
- /**
- * DTO to work with dimension modes
- */
- class DimensionModes
- {
- /**
- * @var DimensionMode[]
- */
- private $dimensions;
- /**
- * @param DimensionMode[] $dimensions
- */
- public function __construct(array $dimensions)
- {
- $this->dimensions = (function (DimensionMode ...$dimensions) {
- $result = [];
- foreach ($dimensions as $dimension) {
- $result[$dimension->getName()] = $dimension;
- }
- return $result;
- })(...$dimensions);
- }
- /**
- * Returns dimensions and their modes
- *
- * @return array
- */
- public function getDimensions(): array
- {
- return $this->dimensions;
- }
- }
|