[ https://issues.apache.org/jira/browse/CAMEL-5466?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13423388#comment-13423388 ]
Ari Mando commented on CAMEL-5466: ---------------------------------- I'll look into the namespace handler. Thanks. Yes, I should have added the different event handling support to the TODO above. I need to think more about this and look into the camel code a bit more. Using just the endpoint api, I couldn't create routes on the fly, hence the polling consumer approach. I'll keep hacking away at in in my toolbox when customer needs dictate. Am I missing something in your approach, how would I do this then in the XML DSL using your approach? I think virtual routing is a known limitation of Camel when you start to deploy large scale systems. Out of curiosity have you seen camel ever been deployed with 1000's of routes (and/or routes files)? I think this would have FD and thread overkill problems. Everything repeats itself :) > new virtual endpoint component > ------------------------------ > > Key: CAMEL-5466 > URL: https://issues.apache.org/jira/browse/CAMEL-5466 > Project: Camel > Issue Type: Improvement > Affects Versions: 2.9.2 > Reporter: Ari Mando > Fix For: 2.9.3 > > Attachments: camel-virtual.tar.gz > > > I had the recurring need for a virtual endpoint in camel routes. Often I need > to define the same route, but just with different endpoint locations, > typically queues. > The supplied component allows for: > <route> > <from uri="virtual://source-queue?real=amq://@?"/> > <to uri="virtual://destination-queue?real=amq2://@?"/> > </route> > Then in a virtual.properties file: > *source-queue,destination-queue > queue1,queue4 > queue2,queue5 > queue3,queue6 > The above properties file would be like adding 3 routes. > The supplied impl is a bit rough, it needs some more work. The first cut was > sufficient for the usecase I needed it for. > I already thought it should be really like: > <virtual id="test" uri="file://queues.xml"> > <route> > <from uri="virtual://source-queue?real=amq://@?"/> > <to uri="virtual://destination-queue?real=amq2://@?"/> > </route> > </virtual> > then an xml file: > <endpointValues> > <header> > <value>source-queue</value> > <value>destination-queue</value> > </headers> > <entry> > <value>queue1,queue4</value> > <value>queue5,queue6</value> > </entry> > </endpointValues> > Using the DSL would allow multiple virtual routes with different config being > pulled from other camel endpoints. > Dynamic routing! Call it virtual routing or template routing. > Tasks to be finished on it: > * implement threading (concurrentConsumers) > * move to high level dsl model > * unit tests > * source configuration from enrichment uri call > * more robust error handling -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira