Hi, There's no need for two routes, unless your use case is more complex than the example you provided.
You can just use something like this: context.start(); /* Now camel is ready */ ProducerTemplate template = context.createProducerTemplate(); String result = template.requestBody("direct:blah", null, String.class); /* This will block until your route produces something */ context.stop() 2017-02-08 11:57 GMT+01:00 Christian Brunotte <c...@lathspell.de>: > Hello Zoran > > So what you propose is (in pseudocode): > > RouteBuilder builder = new RouteBuilder() { > from("direct:start") > .enrich("file://src/main/resources/inputs/test.txt") > ... > .to("direct:result"); > } > > CamelContext camel = new DefaultCamelContext(); > camel.addRoutes(simpleRoute); > camel.start(); > camel.createProducer().send("direct:start"); > String result = camel.createConsumer().receiveBody("direct:result", > String.class); > camel.stop(); > > That would start the Camel Engine but it would wait for a command > ("direct:start") before it does anything and then would have to be > manually be polled, correct? > > Best Regards, > > -christian- > > Am Wed, 8 Feb 2017 09:41:24 +0100 > schrieb Zoran Regvart <zo...@regvart.com>: > >> Hi Christian, >> bare in mind that you can have control if you use direct component, so >> having Camel context/routes started, doesn't mean that it needs to >> poll in the background, you can do that on demand, >> >> HTH, >> >> zoran >> >> On Tue, Feb 7, 2017 at 10:56 PM, Christian Brunotte <c...@lathspell.de> >> wrote: >> > Hello >> > >> > I'd like to integrate Apache Camel into an existing project and just >> > use some of it's endpoint capabilities (ftp, file, sftp etc.) to >> > fetch some files and maybe validate them a bit. >> > >> > I don't want Camel to act as the main controller that dispatches >> > everything in the background. >> > >> > Is it possible to use Camel in a very simplistic and lean way like e.g.: >> > >> > RouteBuilder simpleRoute = new RouteBuilder() { >> > @Override >> > public void configure() { >> > >> > from("file://src/main/resources/inputs/?include=input.*\\.txt&noop=true") >> > .convertBodyTo(String.class) >> > .validate(body().regex("...")); >> > } >> > }; >> > >> > String result = >> > CamelContext.createSimpleConsumerTemplate(simpleRoute).receiveBody(String.class); >> > >> > Currently it seems that I still have to add the route to the CamelContext, >> > start it, then call my ConsumerTemplate and after that stop the context. >> > >> > Best Regards >> > >> > -christian- >> >> >>