I have below channel defined in my spring integration xml.
<int:chain id="channel1" input-channel="inChannel" output-channel="outChannel">
1. <int:service-activator method="logMessage" ref="commonHelper"/>
2. <int:service-activator method="getAbcMessage" ref="flowHelper"/>
3. <int:filter method="isApplicable" ref="flowHelper" discard-channel="nullChannel"/>
4. <int-file:outbound-gateway directory="file:${archive-dir}" filename-generator="filenameGeneratorWithId" requires-reply="true" />
5. <int:service-activator method="fetchInfo" ref="flowHelper"/>
6. <int:service-activator method="batchMessage" ref="flowHelper"/>
7. <int:service-activator method="logMessage" ref="commonHelper"/>
</int:chain>
I want to run line 1,2,3,4 and 5 and then send the message for processing into the outChannel and after the outChannel is complete, execute lines 6 and 7. Is this possible in Spring Integration? Please note that outChannel exists in imported xml file and that file must remain unchanged.
I have given a thought over Splitter and Router but I do not think it is achievable using those. Please correct me if I am wrong.