хорошо, я предлагаю взглянуть на компонент разброса, было бы неплохо для того, что вам нужно.
Вы можете прочитать об этом в следующей ссылке: https://docs.mulesoft.com/mule-user-guide/v/3.6/scatter-gather
Основная идея - сделать что-то вроде этого:
<scatter-gather doc:name="Scatter-Gather">
<processor-chain>
<flow-ref name="getUnitedFlightsFlow" doc:name="getUnitedFlightsFlow"/>
<filter ref="FilterNotArrayList" doc:name="Filter not an ArrayList"/>
</processor-chain>
<processor-chain>
<flow-ref name="getDeltaFlightsFlow" doc:name="getDeltaFlightsFlow"/>
<filter ref="FilterNotArrayList" doc:name="Filter not an ArrayList"/>
</processor-chain>
<processor-chain>
<flow-ref name="getAmericanFlightsFlow" doc:name="getAmericanFlightsFlow"/>
<filter ref="FilterNotArrayList" doc:name="Filter not an ArrayList"/>
</processor-chain>
</scatter-gather>
в этом примере я использую компонент, чтобы сделать выбор, и вызываю подпоток, чтобы выполнить один конкретный dutty для каждого из них.
Надеюсь, это поможет вам.