[
https://issues.apache.org/jira/browse/CAMEL-5554?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13448962#comment-13448962
]
james strachan commented on CAMEL-5554:
---------------------------------------
Added an initial implementation - e.g. see this test case
http://svn.apache.org/viewvc/camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/XmlRoutesFromClassPathTest.java?revision=HEAD&view=markup
by using RoutesXml.loadRoutesFrom... (File / XML / ClassPath / URL) we can
easily load a RoutesDefinition which via @Produces and @ContextName can be
easily injected as routes into a CamelContext (with an optional contextName)
> allow XML DSL to work in CDI
> ----------------------------
>
> Key: CAMEL-5554
> URL: https://issues.apache.org/jira/browse/CAMEL-5554
> Project: Camel
> Issue Type: Improvement
> Components: camel-cdi
> Reporter: james strachan
> Assignee: james strachan
> Fix For: 2.11.0
>
>
> I can see folks wanting to also use CDI with the XML DSL for Camel route
> definitions (e.g. so they can use round tripping visual editors rather than
> using the Java DSL, but use CDI for all dependency injection to minimise XML
> use for configuration).
> Maybe we could have some simple way to import routes into a CDI @Produces
> method using some helper class; so the routes can then be injected via CDI
> into a CamelContext?
> {code}
> public class MyConfiguration {
> // loads some routes for injection into the CamelContext
> @Produces
> List<RouteDefinitions> loadRoutes() {
> return XmlRouteLoader.loadFromClassPath("com/acme/something/blah.xml");
> }
> }
> {code}
> or maybe we should allow routes to be injected so that they could be used to
> create a CamelContext...
> {code}
> public class MyConfiguration {
> @Inject @RouteXml(classpath="com/acme/something/blah.xml")
> List<RouteDefinitions> routes;
> @Produces
> CamelContext createContext() {
> return new CdiCamelContext(routes);
> }
> }
> {code}
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira