Ari Mando created CAMEL-5466:
--------------------------------
Summary: 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
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="messageDrain" 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