camel-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "James Strachan" <james.strac...@gmail.com>
Subject Re: Camel chained routing
Date Sat, 18 Aug 2007 16:42:37 GMT
On 8/18/07, Artur Karazniewicz <karaznie@aster.pl> wrote:
>
> Hi all
>
> I just started to look at Camel, have played with few examples. I just want
> to know if is it possible to chain messages through few endpoints, this way:
>
> from("foo").to("bar").to("baz").to("sec") etc. The way similar to pipelines
> - i.e output of preceding endpoint becomes an input to next endpoint (just
> like in pipeline). Having this, it would be possible to have really
> powerful, don't hesitate to say ;) - well - workflow of some kind.

Definitely!

You can also do

  from("foo").to("bar", "baz", "sec")

to save a bit of typing.

By default things are chained piplines; so the output of "bar" goes to
"baz" etc.

If you don't want that and want to clone the message exchange to each
destination you can use multicast...

  from("foo").multicast().to("bar", "baz", "sec")

By default things are synchronous; so the same caller thread invokes
bar/baz/sec - which is useful for declarative transaction handling
etc.

If you want to make things async, just add a seda step...

  from("foo").to("bar", "seda:baz-n-sec");
  from("seda:baz-n-sec").to("baz", "sec")


-- 
James
-------
http://macstrac.blogspot.com/

Mime
View raw message