Server IP : 80.87.202.40 / Your IP : 216.73.216.169 Web Server : Apache System : Linux rospirotorg.ru 5.14.0-539.el9.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Dec 5 22:26:13 UTC 2024 x86_64 User : bitrix ( 600) PHP Version : 8.2.27 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /home/bitrix/ext_www/rospirotorg.ru/bitrix/modules/sale/lib/exchange/ |
Upload File : |
<?php namespace Bitrix\Sale\Exchange; use Bitrix\Main\ArgumentOutOfRangeException; use Bitrix\Sale\Exchange\Internals\LoggerDiag; use Bitrix\Sale\Exchange\OneC\ImportCollision; use Bitrix\Sale\Exchange\OneC\ImportCriterionBase; final class ManagerImport extends ManagerBase { /** @var ICollision $collision */ protected $collision = null; /** @var ICriterion $criterion */ protected $criterion = null; /** * @return string */ static public function getDirectionType() { return self::EXCHANGE_DIRECTION_IMPORT; } /** * @param ImportBase $entity */ static public function configure(ImportBase $entity) { $config = static::getImportByType($entity->getOwnerTypeId()); $entity->loadSettings($config->settings); $entity->loadCollision($config->collision); $entity->loadCriterion($config->criterion); $entity->loadLogger($config->logger); } /** * Add instance of this manager to collection * @param $typeId * @param ISettingsImport $settings * @param ICollision $collision * @param ICriterion $criterion * @return mixed * @throws ArgumentOutOfRangeException * @internal */ static public function registerInstance($typeId, ISettingsImport $settings, ICollision $collision = null, ICriterion $criterion = null) { static::IsDefinedTypeId($typeId); if(self::$instance[$typeId] === null) { $manager = new static(); $manager->settings = $settings; $manager->collision = $collision !== null ? $collision : new ImportCollision(); $manager->criterion = $criterion !== null ? $criterion : new ImportCriterionBase(); $manager->logger = new LoggerDiag(); self::$instance[$typeId] = $manager; } return self::$instance[$typeId]; } /** * @param $typeId * @return ISettingsImport * @throws ArgumentOutOfRangeException */ static public function getSettingsByType($typeId) { static::IsDefinedTypeId($typeId); $config = static::getImportByType($typeId); return $config->settings; } }