/app/code/core/Mage/Dataflow/Model/Convert/Parser/Abstract.php
PHP | 120 lines | 43 code | 11 blank | 66 comment | 4 complexity | 98eeb7417986282ad2c2c5cfb18f133b MD5 | raw file
Possible License(s): CC-BY-SA-3.0
- <?php
- /**
- * Magento
- *
- * NOTICE OF LICENSE
- *
- * This source file is subject to the Open Software License (OSL 3.0)
- * that is bundled with this package in the file LICENSE.txt.
- * It is also available through the world-wide-web at this URL:
- * http://opensource.org/licenses/osl-3.0.php
- * If you did not receive a copy of the license and are unable to
- * obtain it through the world-wide-web, please send an email
- * to license@magentocommerce.com so we can send you a copy immediately.
- *
- * DISCLAIMER
- *
- * Do not edit or add to this file if you wish to upgrade Magento to newer
- * versions in the future. If you wish to customize Magento for your
- * needs please refer to http://www.magentocommerce.com for more information.
- *
- * @category Mage
- * @package Mage_Dataflow
- * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
- * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
- */
- /**
- * Convert parser abstract
- *
- * @category Mage
- * @package Mage_Dataflow
- * @author Magento Core Team <core@magentocommerce.com>
- */
- abstract class Mage_Dataflow_Model_Convert_Parser_Abstract
- extends Mage_Dataflow_Model_Convert_Container_Abstract
- implements Mage_Dataflow_Model_Convert_Parser_Interface
- {
- /**
- * Dataflow batch model
- *
- * @var Mage_Dataflow_Model_Batch
- */
- protected $_batch;
- /**
- * Dataflow batch export model
- *
- * @var Mage_Dataflow_Model_Batch_Export
- */
- protected $_batchExport;
- /**
- * Dataflow batch import model
- *
- * @var Mage_Dataflow_Model_Batch_Import
- */
- protected $_batchImport;
- /**
- * Count parse rows
- *
- * @var int
- */
- protected $_countRows = 0;
- /**
- * Retrieve Batch model singleton
- *
- * @return Mage_Dataflow_Model_Batch
- */
- public function getBatchModel()
- {
- if (is_null($this->_batch)) {
- $this->_batch = Mage::getSingleton('Mage_Dataflow_Model_Batch');
- }
- return $this->_batch;
- }
- /**
- * Retrieve Batch export model
- *
- * @return Mage_Dataflow_Model_Batch_Export
- */
- public function getBatchExportModel()
- {
- if (is_null($this->_batchExport)) {
- $object = Mage::getModel('Mage_Dataflow_Model_Batch_Export');
- $this->_batchExport = Varien_Object_Cache::singleton()->save($object);
- }
- return Varien_Object_Cache::singleton()->load($this->_batchExport);
- }
- /**
- * Retrieve Batch import model
- *
- * @return Mage_Dataflow_Model_Import_Export
- */
- public function getBatchImportModel()
- {
- if (is_null($this->_batchImport)) {
- $object = Mage::getModel('Mage_Dataflow_Model_Batch_Import');
- $this->_batchImport = Varien_Object_Cache::singleton()->save($object);
- }
- return Varien_Object_Cache::singleton()->load($this->_batchImport);
- }
- protected function _copy($file)
- {
- $ioAdapter = new Varien_Io_File();
- if (!$ioAdapter->fileExists($file)) {
- Mage::throwException(Mage::helper('Mage_Dataflow_Helper_Data')->__('File "%s" does not exist.', $file));
- }
- $ioAdapter->setAllowCreateFolders(true);
- $ioAdapter->createDestinationDir($this->getBatchModel()->getIoAdapter()->getPath());
- return $ioAdapter->cp($file, $this->getBatchModel()->getIoAdapter()->getFile(true));
- }
- }