You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@camel.apache.org by "Claus Ibsen (JIRA)" <ji...@apache.org> on 2015/07/09 12:34:04 UTC
[jira] [Resolved] (CAMEL-5553) camel-cdi - support injection of
Endpoint and @Produce @Consume annotations
[ https://issues.apache.org/jira/browse/CAMEL-5553?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Claus Ibsen resolved CAMEL-5553.
--------------------------------
Resolution: Fixed
Assignee: Claus Ibsen
Fix Version/s: (was: Future)
2.16.0
This is possible today, and the cdi example and archetype shows this
> camel-cdi - support injection of Endpoint and @Produce @Consume annotations
> ---------------------------------------------------------------------------
>
> Key: CAMEL-5553
> URL: https://issues.apache.org/jira/browse/CAMEL-5553
> Project: Camel
> Issue Type: Improvement
> Components: camel-cdi
> Reporter: james strachan
> Assignee: Claus Ibsen
> Fix For: 2.16.0
>
>
> we don't yet support the various camel annotation injections in CDI yet; we should support the same capabilities as we have in spring/guice
> http://camel.apache.org/bean-integration.html
> http://camel.apache.org/bean-injection.html
> I guess a more CDI way to do endpoint injection might be to have an annotation for endpointURI specification. Then you'd either use
> {code}
> public class MyBean {
> // named reference injection
> @Inject @Named("foo") Endpoint bar;
> // URI based injection
> @Inject @Uri("mock:whatnot") MockEndpoint foo;
> ...
> }
> {code}
> Rather than using the DI-agnostic @EndpointInject annotation - though I guess we could support it too (though having Inject twice looks a bit icky and not as DRY)...
> {code}
> public class MyBean {
> // using current annotation...
> @Inject @EndpointInject(uri = "mock:whatnot") MockEndpoint bar;
> ...
> }
> {code}
> For handling @Consume it would be nice to avoid having to use @Inject too as that seems a bit odd (since there's no injection going on).
> For @Produce I guess we could support a straight @Inject of a ProcessorTemplate; allowing use of @Uri annotation to specify the default URI to send to
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)