I am using Spring batch. I have 2 Item Procesors which are used for doing the processing logic.
I have configured the listener for both ItemReader and ItemWriter.
I have used Spring Batch CompositeItemProcessor (org.springframework.batch.item.support.CompositeItemProcessor).
My Job configuration is as follows :-
<job id="SoDJob" xmlns="http://www.springframework.org/schema/batch">
<step id="step1">
<tasklet>
<chunk reader="itemReader" processor="SoDConflictProcessor" writer="SoDConflictExcelWriter"
commit-interval="1" />
<listeners>
<listener ref="sodJobListener" />
<listener ref="SoDItemReaderListener" />
<listener ref="SoDItemWriterListener" />
</listeners>
</tasklet>
</step>
</job>
My Processors are configured as :-
<bean id="SoDConflictProcessor"
class="org.springframework.batch.item.support.CompositeItemProcessor">
<property name="delegates">
<list>
<ref bean="SoDDataProcessor" />
<ref bean="SoDLogicProcessor" />
</list>
</property>
</bean>
How Can i write individual ItemProcessListener for both ItemProcessor (SoDDataProcessor and SoDLogicProcessor).
FYI :
1) SoDDataProcessor - implements ItemProcessor<User, HashSet<String>>
.
2) SoDLogicProcessor - implements ItemProcessor<HashSet<String>, HashSet<Object>>
Hope this clears my question.