On Fri, Sep 30, 2011 at 1:42 AM, kal2420 <kalpi...@cisco.com> wrote: > Thanks Clause, I will give it a try this week end and see how it goes. > Starting and stoping the route seems a bit expensive, can I use suspend and > resume? >
You can try. But you may have to stop for the selector to be updated. But give it a go first. > Thanks > Kal > > On Sep 28, 2011, at 2:01 AM, Claus Ibsen-2 [via Camel] wrote: > >> Hi >> >> Yes you would need to stop the route. Adjust the endpoint. And start >> the route again to have the JMS selector dynamic updated. >> >> CamelContext has API to start/stop rotues by the route id. >> >> >> On Wed, Sep 28, 2011 at 5:10 AM, kal2420 <[hidden email]> wrote: >> >> > Thanks Claus, >> > >> > This example is very helpful, I am still running into a bit of an >> > issues. Here is my createRouteBuilder() method ( combined JmsSelectorTest >> > and JmsSelectorInTest ) : >> > >> > @Override >> > protected RouteBuilder createRouteBuilder() throws Exception { >> > return new RouteBuilder() { >> > @Override >> > public void configure() throws Exception { >> > JmsEndpoint endpoint = >> > context.getEndpoint("activemq:test.b", JmsEndpoint.class); >> > endpoint.setSelector("selector=cheese='y'"); >> > >> > from("activemq:test.a").to("activemq:test.b"); >> > >> > // >> > from("activemq:test.b?selector=cheese='y'").to("mock:result"); >> > from(endpoint).routeId("route-b").to("mock:result"); >> > >> > from("activemq:test.c").process(new Processor() { >> > >> > @Override >> > public void process(Exchange arg0) throws Exception { >> > >> > //================================================== >> > // >> > // I want to change selector on an endpoint at >> > run time >> > // does it require an endpoint restart ? >> > //================================================== >> > >> > CamelContext ctx = getContext(); >> > Route rt = ctx.getRoute("route-b"); >> > JmsEndpoint endpoint = (JmsEndpoint) >> > rt.getEndpoint(); >> > endpoint.setSelector("cheese IN ('x', 'n')"); >> > >> > } >> > }).to("activemq:test.b"); >> > } >> > }; >> > } >> > >> > >> > I noticed that if I define the selector as part of the uri every thing >> > works, but I want to dynamically change the selector at runtime. Let me >> > know if I am doing something wrong here. >> > >> > Thanks >> > Kal >> > >> > On Sep 27, 2011, at 8:09 AM, Claus Ibsen-2 [via Camel] wrote: >> > >> >> Hi >> >> >> >> I created an unit test which you can take a look at. It uses the IN >> >> selector >> >> http://svn.apache.org/viewvc?rev=1176348&view=rev >> >> >> >> On Tue, Sep 27, 2011 at 1:58 PM, Claus Ibsen <[hidden email]> wrote: >> >> >> >> > On Mon, Sep 26, 2011 at 6:05 PM, kal2420 <[hidden email]> wrote: >> >> >> Thanks Claus, >> >> >> >> >> >> I got busy with work, and I am just getting back to camel. I did >> >> >> try >> >> >> looking into event-driven-consusmer, What i really want is to configure >> >> >> dynamic selector on activemq queue. Here is how I am trying to >> >> >> configure >> >> >> dynamic selector, please tell me if this is correct: >> >> >> >> >> >> // once all routes are up and running >> >> >> // set selector on jms endpoint >> >> >> CamelContext ctx = getContext(); >> >> >> JmsEndpoint endpoint = >> >> >> ctx.getEndpoint("activemq://queue:test-1",JmsEndpoint.class); >> >> >> // String selector = "userid='test12'"; // also tried with %3D url >> >> >> format >> >> >> String selector = "userid IN ('test12' , 'terst234'); >> >> >> endpoint.setSelector(selector); >> >> >> >> >> > >> >> > So you have a route with that particular endpoint >> >> > from(endpoint).to("xxx") >> >> > >> >> > >> >> > The selector should use a SQL like syntax. I actually do not know if >> >> > ActiveMQ has an logging to WARN/ERROR level >> >> > if the syntax is invalid. >> >> > >> >> > >> >> > >> >> >> Issue: I am seeing all messages being processed, while i only want to >> >> >> process messages where i have userid header value set to 'test12' or >> >> >> 'terst234' >> >> >> >> >> >> Thanks >> >> >> Kal >> >> >> >> >> >> -- >> >> >> View this message in context: >> >> >> http://camel.465427.n5.nabble.com/Activemq-dynamic-endpoint-configuration-tp4749853p4841926.html >> >> >> Sent from the Camel - Users mailing list archive at Nabble.com. >> >> >> >> >> > >> >> > >> >> > >> >> > -- >> >> > Claus Ibsen >> >> > ----------------- >> >> > FuseSource >> >> > Email: [hidden email] >> >> > Web: http://fusesource.com >> >> > Twitter: davsclaus, fusenews >> >> > Blog: http://davsclaus.blogspot.com/ >> >> > Author of Camel in Action: http://www.manning.com/ibsen/ >> >> > >> >> >> >> >> >> >> >> -- >> >> Claus Ibsen >> >> ----------------- >> >> FuseSource >> >> Email: [hidden email] >> >> Web: http://fusesource.com >> >> Twitter: davsclaus, fusenews >> >> Blog: http://davsclaus.blogspot.com/ >> >> Author of Camel in Action: http://www.manning.com/ibsen/ >> >> >> >> >> >> If you reply to this email, your message will be added to the discussion >> >> below: >> >> http://camel.465427.n5.nabble.com/Activemq-dynamic-endpoint-configuration-tp4749853p4845119.html >> >> To unsubscribe from Activemq dynamic endpoint configuration, click here. >> > >> > >> > >> > -- >> > View this message in context: >> > http://camel.465427.n5.nabble.com/Activemq-dynamic-endpoint-configuration-tp4749853p4847785.html >> > Sent from the Camel - Users mailing list archive at Nabble.com. >> >> >> >> -- >> Claus Ibsen >> ----------------- >> FuseSource >> Email: [hidden email] >> Web: http://fusesource.com >> Twitter: davsclaus, fusenews >> Blog: http://davsclaus.blogspot.com/ >> Author of Camel in Action: http://www.manning.com/ibsen/ >> >> >> If you reply to this email, your message will be added to the discussion >> below: >> http://camel.465427.n5.nabble.com/Activemq-dynamic-endpoint-configuration-tp4749853p4848015.html >> To unsubscribe from Activemq dynamic endpoint configuration, click here. > > > > -- > View this message in context: > http://camel.465427.n5.nabble.com/Activemq-dynamic-endpoint-configuration-tp4749853p4855106.html > Sent from the Camel - Users mailing list archive at Nabble.com. -- Claus Ibsen ----------------- FuseSource Email: cib...@fusesource.com Web: http://fusesource.com Twitter: davsclaus, fusenews Blog: http://davsclaus.blogspot.com/ Author of Camel in Action: http://www.manning.com/ibsen/