James, direct is synchronous and can return a response...just use a
ProducerTemplate in your processor to call the route like this...you also
should reuse the producer template if there is a high volume of calls

Object result =
exchange.getContext().createProducerTemplate().requestBody("direct:start","input
message");

from("direct:start").setBody(simple("processed ${body}"));


James Talbut 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.
> 
> Thanks for any pointers.
> 
> Jim
> 


-----
Ben O'Day
IT Consultant -http://consulting-notes.com

--
View this message in context: 
http://camel.465427.n5.nabble.com/Best-component-to-use-for-a-synchronous-InOut-route-tp4583148p4583755.html
Sent from the Camel - Users mailing list archive at Nabble.com.

Reply via email to