Your use case it slightly different then the standard use case but perhaps the Idempotent Consumer will suit your needs? http://camel.apache.org/idempotent-consumer.html
On Tue, Jan 21, 2014 at 2:12 PM, shindito <atanas.shin...@gmail.com> wrote: > Hi guys, > > consider the following route: > > from(srcEndpoint). > to(destEndpoint1). > to(destEndpoint2) > > I have a Java program which does the following: > - create a Camel exchange, add an onComplition action to remove the > exchange > from the cache on success, store the exchange in a cache, and then send it > to the srcEndpoint. > The camel route takes it from there and delivers the exchange to > destEndpoint1 and destEndpoint2. > If the JVM crashes between destEndpoint1 and destEndpoint2, then I make a > flush which: > - gets the Exchange from the cache and sends it to srcEndpoint. > > My question is: > What is the Camel way to prevent destEndpoint1 from receiving the same > exchange twice (as it was already received before the JVM crash)? Please > note that there might be more then two destination endpoints in the route. > Is it possible to instruct the route not to deliver the message to > endpoints > that have already received (acknowledged) it? Is this an exchange > configuration? > > If there is no Camel feature that would do this for me, what is your > recommendation: where should I plug-in my custom logic to perform what's > necessary to avoid duplicate messages? > > Best regards, > Atanas > > > > -- > View this message in context: > http://camel.465427.n5.nabble.com/Avoiding-duplicate-messages-tp5746278.html > Sent from the Camel - Users mailing list archive at Nabble.com. >