Ah, I didn't understand what you were saying before.
Your point is that these two should be synonymous, even if they're enclosed
in a multicast()...end():
1) This...
.*pipeline("direct:A", "direct:B")*
2) and this...
.*pipeline().to("direct:C").to("direct:D").end()*
but only the second one works the way you expect.
The first one sends the same input to both routes (i.e. does not send the
output of A to B)
It does seem odd, and a brief test confirms the behavior you describe (
Sample code here
<https://github.com/DariusX/CamelSandbox/blob/master/CamelSandbox/src/main/java/com/zerses/camelsandbox/MulticastPipelinesTest.java)>
)
Looking at the Camel code - Line 1165
<https://github.com/apache/camel/blob/master/camel-core/src/main/java/org/apache/camel/model/ProcessorDefinition.java>
, that version of pipeline(String...uri) is simply a synonym for
to(String...uri), which would explain how it is working.
Someone else would need to speak to how it *ought* to work, but I agree it
does not seem intuitive as-is.
--
View this message in context:
http://camel.465427.n5.nabble.com/Question-on-multicast-to-pipelines-tp5789396p5789593.html
Sent from the Camel - Users mailing list archive at Nabble.com.