camel-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jon Mithe <>
Subject Desktop applications
Date Mon, 14 Jul 2014 16:26:56 GMT

I'm learning about camel but I'm struggling to write a complete swing
desktop application with it nicely.

All of the examples/tutorials I have read always have a route from listening
to a port or a queue to being transformed and outputted into a
database/webservice etc but what about if the endpoints are going to be a
GUI?  I could see maybe a custom bean / endpoint being a consumer/producer?

Also, how this works in a bigger application, so for example in the cafe

>   ProducerTemplate template = camelContext.createProducerTemplate();
>   Order order = create order
>   template.sendBody("direct:cafe", order);

Would you really call camelContext.createProducerTemplate();? I dont see how
that works bar there is only one route in camel that has an order.

For example, what happens here if there is a second route to save an order
halfway through it so it can be completed later, or for example another to
fire off an update / amendment for an existing order?  

Likewise, if the Barista's had an application / order screen that they see
the incomming orders so they could make them.  

If it were a simple list I could see maybe writing a bean and sending it to
that / that updates the gui.  Are there any patterns for if there were n
things that need updated (say the app had a counter on the menu bar counting
total drinks made, or another widget to report stock levels up to the

I could see how a recipient list could be used, however, what happens if the
system is very modular / the thing receiving them doesnt know who is
interested -- I suppose this may be regarded as bad design / use but I can
see that being a problem applying / improving a legacy system.  I see some
things with eventbus that maybe useful to fire off generic events into the
system but unsure.

Any help / insight would be great thanks, I think I'm getting a reasonable
grip with some EIP's and routes / flows and it really does look good, but
having a black spot on tieing it together into within a desktop application.


View this message in context:
Sent from the Camel - Users mailing list archive at

View raw message