according to  http://camel.apache.org/multicast.html
http://camel.apache.org/multicast.html , multicast will copy the source
Exchange and multicast each copy. I.e. changes done to the Exchange remains
local to the multicast recipient. Is there a way to make changes done to the
header visible in further processing? Particularly, I would like to see if
the Exchange.FILTER_MATCHED header has been set or not. With the
MulticastDefinition below, the header is lost before reaching aggregation.

Any thoughts are highly appreciated.

MulticastDefinition multicastDefinition = route.multicast(); 
for (Producer producer : producers) { 
  multicastDefinition 
  .filter().method(producer, "filter")   
  .bean(producer, "createEvent") 
  .to(EndPointUri.INCOMING_EVENT_QUEUE); 
} 
multicastDefinition.aggregate(constant(true) , new
MyAggregationStrategy()).completionTimeout(3000).to("log:dummy");

--
View this message in context: 
http://camel.465427.n5.nabble.com/copy-of-Exchange-during-Multicast-tp5714477.html
Sent from the Camel - Users mailing list archive at Nabble.com.

Reply via email to