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.

Reply via email to