acceleratorservices.batch.impex.basefolder=${HYBRIS_DATA_DIR}/acceleratorservices/import
acceleratorservices.export.basefolder=${HYBRIS_DATA_DIR}/acceleratorservices/export
<file:inbound-channel-adapter id="batchFilesElectronics"
directory="#{baseDirectoryElectronics}"
filename-regex="^(.*)-(\d+)\.csv" comparator="fileOrderComparator">
<int:poller fixed-rate="1000" />
</file:inbound-channel-adapter>
<file:outbound-gateway request-channel="batchFilesElectronics"
reply-channel="batchFilesElectronicsProc"
directory="#{baseDirectoryElectronics}/processing"
delete-source-files="true" />
<int:service-activator input-channel="batchFilesElectronicsProc"
output-channel="batchFilesHeaderInit"
ref="electronicsHeaderSetupTask" method="execute" />
<bean id="electronicsHeaderSetupTask"
class="de.hybris.platform.acceleratorservices.dataimport.batch.task.HeaderSetupTask">
<property name="catalog" value="electronicsProductCatalog" />
<property name="net" value="false" />
<property name="storeBaseDirectory" ref="baseDirectoryElectronics"
/>
</bean>
<int:service-activator input-channel="batchFilesHeaderInit"
output-channel="batchFilesHeader" ref="headerInitTask"
method="execute" />
<bean id="headerInitTask"
class="de.hybris.platform.acceleratorservices.dataimport.batch.task.HeaderInitTask">
<property name="sequenceIdParser" ref="batchSequenceIdParser"/>
<property name="languageParser" ref="batchLanguageParser"/>
<property name="fallbackLanguage" value="en" />
</bean>
<int:service-activator input-channel="batchFilesHeader"
output-channel="batchFilesTran" ref="batchTransformerTask"
method="execute" />
<bean id="batchTransformerTask"
class="de.hybris.platform.acceleratorservices.dataimport.batch.task.ImpexTransformerTask"
init-method="initConvertersMap">
<property name="fieldSeparator" value="," />
<property name="encoding" value="UTF-8" />
<property name="linesToSkip" value="0"/>
<property name="cleanupHelper" ref="cleanupHelper" />
</bean>
<int:service-activator input-channel="batchFilesTran"
output-channel="batchFilesImp" ref="batchRunnerTask"
method="execute" />
<bean id="batchRunnerTask"
class="de.hybris.platform.acceleratorservices.dataimport.batch.task.AbstractImpexRunnerTask">
<property name="sessionService" ref="sessionService" />
<property name="importService" ref="importService" />
<lookup-method name="getImportConfig" bean="importConfig" />
</bean>
<int:service-activator input-channel="batchFilesImp"
ref="batchCleanupTask" method="execute" />
<bean id="batchCleanupTask"
class="de.hybris.platform.acceleratorservices.dataimport.batch.task.CleanupTask">
<property name="cleanupHelper" ref="cleanupHelper" />
</bean>
The inbound-channel-adapter represents the
org.springframework.integration.file.FileReadingMessageSource class. Each
1000 milliseconds the receive() method will be called and the following
sequence will be called in the following sequence
file:outbound-gateway request-channel="batchFilesElectronics" reply-
channel="batchFilesElectronicsProc"
int:service-activator input-channel="batchFilesElectronicsProc"
output-channel="batchFilesHeaderInit"
int:service-activator input-channel="batchFilesHeaderInit"
output-channel="batchFilesHeader"
int:service-activator input-channel="batchFilesHeader"
output-channel="batchFilesTran"
int:service-activator input-channel="batchFilesTran"
output-channel="batchFilesImp"