Just to say thanks to Claus and Ben.
I've ended up using @Producer with a direct component - it's not totally free of Camel, but it has to have some kind of non-POJO thing in there so that's OK.

Jim

On 14/07/2011 05:24, Claus Ibsen wrote:
On Wed, Jul 13, 2011 at 6:07 PM, James Talbut<jtalbut@tardis.spudsoft>  wrote:
Hi,

I've got a processor that needs to call out to another Camel route (multiple 
times) to get some data.
The complexities of when it calls out mean that it's not worth trying to put 
all the logic into one route.

What's the best component to use to make a camel route into a synchronous 
function that can be called from the same VM?
I could put a web service around the route and call that service from a normal 
CXF client, but that seems a bit heavyweight.
I could use a direct component to start the route, but that isn't synchronous 
InOut (or can it be made so?) and it requires me to implement CamelContextAware 
(to get
the Endpoint) which is a bit ugly.

You can also use @Produce annotation to reduce the Camel API in your
code. And there are other ways. Check some of these links. And if you
got the Camel in Action book, you may want to check chapter 14.

http://camel.apache.org/pojo-producing.html
http://camel.apache.org/hiding-middleware.html
http://camel.apache.org/using-camelproxy.html



Thanks for any pointers.

Jim




Reply via email to