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? 

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.

Reply via email to