Last active
October 4, 2017 07:37
-
-
Save a-ast/e1aaae92c089f5be8c157927296c9858 to your computer and use it in GitHub Desktop.
Spryker DataImport: implement data step
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
namespace Pyz\Zed\DataImport\Business; | |
use Pyz\Zed\AkeneoConnector\Business\Model\Attribute\YourWriterStep; | |
use Spryker\Zed\DataImport\Business\Model\DataImporterInterface; | |
use Spryker\Zed\DataImport\Business\DataImportBusinessFactory as SprykerDataImportBusinessFactory; | |
use Spryker\Zed\DataImport\Business\Model\DataSet\DataSetStepBrokerInterface; | |
/** | |
* @method \Pyz\Zed\DataImport\DataImportConfig getConfig() | |
*/ | |
class DataImportBusinessFactory extends SprykerDataImportBusinessFactory | |
{ | |
protected function createNewDataStep(): YourWriterStep | |
{ | |
return new YourWriterStep(); | |
} | |
protected function getNewDataStepBroker(): DataSetStepBrokerInterface | |
{ | |
$dataSetStepBroker = $this->createTransactionAwareDataSetStepBroker(); | |
$dataSetStepBroker->addStep($this->createNewDataStep()); | |
return $dataSetStepBroker; | |
} | |
protected function createNewImporter(): DataImporterInterface | |
{ | |
$dataImporter = $this->getCsvDataImporterFromConfig($this->getConfig()->getDataImporterConfiguration()); | |
$dataSetStepBroker = $this->getNewDataStepBroker(); | |
$dataImporter->addDataSetStepBroker($dataSetStepBroker); | |
return $dataImporter; | |
} | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
public function getImporter(): DataImporterInterface | |
{ | |
$dataImporterCollection = $this->createDataImporterCollection(); | |
$dataImporterCollection->addDataImporter($this->createNewImporter()); | |
return $dataImporterCollection; | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
namespace Pyz\Zed\AkeneoConnector\Business\Model; | |
use Spryker\Zed\DataImport\Business\Model\DataImportStep\DataImportStepInterface; | |
use Spryker\Zed\DataImport\Business\Model\DataSet\DataSetInterface; | |
class YourWriterStep implements DataImportStepInterface | |
{ | |
public function execute(DataSetInterface $dataSet): void | |
{ | |
// process $dataSet and persist data | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment