예제 #1
0
파일: Import.php 프로젝트: nemphys/magento2
 /**
  * Create instance of entity adapter and return it
  *
  * @throws Mage_Core_Exception
  * @return Mage_ImportExport_Model_Import_Entity_Abstract|Mage_ImportExport_Model_Import_EntityAbstract
  */
 protected function _getEntityAdapter()
 {
     if (!$this->_entityAdapter) {
         $entityTypes = Mage_ImportExport_Model_Config::getModels(self::CONFIG_KEY_ENTITIES);
         if (isset($entityTypes[$this->getEntity()])) {
             try {
                 $this->_entityAdapter = Mage::getModel($entityTypes[$this->getEntity()]['model']);
             } catch (Exception $e) {
                 Mage::logException($e);
                 Mage::throwException(Mage::helper('Mage_ImportExport_Helper_Data')->__('Invalid entity model'));
             }
             if (!$this->_entityAdapter instanceof Mage_ImportExport_Model_Import_Entity_Abstract && !$this->_entityAdapter instanceof Mage_ImportExport_Model_Import_EntityAbstract) {
                 Mage::throwException(Mage::helper('Mage_ImportExport_Helper_Data')->__('Entity adapter object must be an instance of %s or %s', 'Mage_ImportExport_Model_Import_Entity_Abstract', 'Mage_ImportExport_Model_Import_EntityAbstract'));
             }
             // check for entity codes integrity
             if ($this->getEntity() != $this->_entityAdapter->getEntityTypeCode()) {
                 Mage::throwException(Mage::helper('Mage_ImportExport_Helper_Data')->__('Input entity code is not equal to entity adapter code'));
             }
         } else {
             Mage::throwException(Mage::helper('Mage_ImportExport_Helper_Data')->__('Invalid entity'));
         }
         $this->_entityAdapter->setParameters($this->getData());
     }
     return $this->_entityAdapter;
 }
예제 #2
0
 /**
  * Set import parameters
  *
  * @param array $params
  * @return Mage_ImportExport_Model_Import_Entity_Product
  */
 public function setParameters(array $params)
 {
     parent::setParameters($params);
     $this->getOptionEntity()->setParameters($params);
     return $this;
 }