from("jms:queue.name").aggregate(new AggregationStrategy() {
    public Exchange aggregate(Exchange oldExchange, Exchange newExchange) {
    // code here
    }
}).completionSize(2).to("exec://FILEPATH?args=");

As I look/ask around more I think this is closer to what I want. Someone
said to use a GroupedExchange or something as well where I correlate on
clientID and fileName. I'm not really sure how that works though....Am I on
the right track?


On Fri, Jun 21, 2013 at 1:16 PM, Sean Beck <seanmckayb...@gmail.com> wrote:

> Everything installed fine for camelone but I ran mvn camel:run and it
> seems to have gotten stuck after first [INFO]
>
>
> On Fri, Jun 21, 2013 at 12:27 PM, Sean Beck <seanmckayb...@gmail.com>wrote:
>
>> Thanks for the response! I'll look now and let you know
>>
>>
>> On Fri, Jun 21, 2013 at 12:24 PM, Hadrian Zbarcea <hzbar...@gmail.com>wrote:
>>
>>> Sean,
>>>
>>> I presented at CamelOne last week on how to handle exactly this kind of
>>> scenarios with Camel and claimcheck. The code and slides are available on
>>> github [1]. Please take a look and let me know if you have any questions.
>>>
>>> Cheers,
>>> Hadrian
>>>
>>> [1] 
>>> https://github.com/hzbarcea/**camelone<https://github.com/hzbarcea/camelone>
>>>
>>>
>>>
>>> On 06/21/2013 01:21 PM, Sean Beck wrote:
>>>
>>>> Could I create my own AggregationStrategy class that stores all the
>>>> messages and handles them appropriately? Or is there an easier way?
>>>>
>>>>
>>>> On Fri, Jun 21, 2013 at 9:19 AM, Sean Beck <seanmckayb...@gmail.com>
>>>> wrote:
>>>>
>>>>  Thanks for the response.
>>>>>
>>>>> The separate process is a program that puts two files together.
>>>>> Multiple
>>>>> clients with their own SSIDs send over files, and there are 2 files
>>>>> that go
>>>>> together for each set of data operated on by the client. As soon as the
>>>>> files are received on my server the server sends a message containing
>>>>> the
>>>>> file path, file name, SSID, and the "type" of the file. I want to use
>>>>> Camel
>>>>> to detect when I get two messages for the same file name but each of a
>>>>> different type (there are only two types) from the same SSID, then
>>>>> once I
>>>>> get both messages start up the program that combines the two files.
>>>>>
>>>>> So I know I want an aggregator that starts the process based off a
>>>>> completion size of 2, but I don't know how everything works to really
>>>>> break
>>>>> the problem down. 1) I need to figure out how I would execute the
>>>>> program
>>>>> (which it looks like would be exec) 2) Have one aggregator that can put
>>>>> messages together from different SSIDs.
>>>>>
>>>>>
>>>>> On Fri, Jun 21, 2013 at 12:27 AM, Claus Ibsen <claus.ib...@gmail.com
>>>>> >wrote:
>>>>>
>>>>>  Hi
>>>>>>
>>>>>> Can you be more specific with what  you mean with separate process?
>>>>>>
>>>>>> There is an exec to run an executable
>>>>>> http://camel.apache.org/exec
>>>>>>
>>>>>>
>>>>>> On Fri, Jun 21, 2013 at 1:19 AM, Sean Beck <seanmckayb...@gmail.com>
>>>>>> wrote:
>>>>>>
>>>>>>> So I have figured out how to gather messages based on my criteria. A
>>>>>>> process needs to be started as soon as two messages have been
>>>>>>> received.
>>>>>>> Currently I have:
>>>>>>>
>>>>>>> from("jms:newFileQueue").**aggregate(new
>>>>>>> HeaderExpression("**CamelFileName")).**completionSize(2).to("**
>>>>>>> triggerservice
>>>>>>>
>>>>>> to
>>>>>>
>>>>>>> process and merge files")
>>>>>>>
>>>>>>> The portion I am unsure on is the very last call to to(). How would I
>>>>>>>
>>>>>> start
>>>>>>
>>>>>>> up a separate process once I get the necessary completionSize?
>>>>>>>
>>>>>>> Thanks
>>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Claus Ibsen
>>>>>> -----------------
>>>>>> www.camelone.org: The open source integration conference.
>>>>>>
>>>>>> Red Hat, Inc.
>>>>>> FuseSource is now part of Red Hat
>>>>>> Email: cib...@redhat.com
>>>>>> Web: http://fusesource.com
>>>>>> Twitter: davsclaus
>>>>>> Blog: http://davsclaus.com
>>>>>> Author of Camel in Action: http://www.manning.com/ibsen
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>
>>
>

Reply via email to