![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/old/vendor/amasty/base/Model/Import/Mapping/ |
<?php /** * @author Amasty Team * @copyright Copyright (c) Amasty (https://www.amasty.com) * @package Magento 2 Base Package */ namespace Amasty\Base\Model\Import\Mapping; class Mapping implements MappingInterface { /** * @var string */ protected $masterAttributeCode = ''; /** * FYI: column names pattern [a-z][a-z0-9_]* * @var array */ protected $mappings = [ /** * csv_column_name => model_column_name * model_column_name (numeric key means model_column_name => model_column_name) **/ ]; /** * @var array */ private $processedMapping; /** * @inheritdoc */ public function getValidColumnNames() { return array_keys($this->processedMapping()); } /** * @inheritdoc */ public function getMappedField($columnName) { if (!isset($this->processedMapping()[$columnName])) { throw new \Amasty\Base\Exceptions\MappingColumnDoesntExist(); } return $this->processedMapping()[$columnName]; } /** * @inheritdoc */ public function getMasterAttributeCode() { if (empty($this->masterAttributeCode)) { throw new \Amasty\Base\Exceptions\MasterAttributeCodeDoesntSet(); } return $this->masterAttributeCode; } public function processedMapping() { if (null === $this->processedMapping) { $this->processedMapping = []; foreach ($this->mappings as $csvField => $field) { if (is_numeric($csvField)) { $this->processedMapping[$field] = $field; } else { $this->processedMapping[$csvField] = $field; } } } return $this->processedMapping; } }