[ 
https://issues.apache.org/jira/browse/CAMEL-9201?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Antonin Stefanutti updated CAMEL-9201:
--------------------------------------
    Description: 
Since version 2.10.0 of Camel, the Camel CDI component hasn't been actively 
maintained and suffers from few design flaws that impede improvements and new 
features.

Over the last couple of months, work has been done to refactor and improve the 
existing Camel CDI component. However, given that a redesign was required to 
make it more _CDI spirit_, the heavy work has been done in a separate project 
and the rational for an overhaul and the contribution list documented here: 
https://github.com/astefanutti/camel-cdi.

As people started using and contributing to it, it'd be better to have that 
improved version contributed back to the project as soon as possible to avoid 
diverging to much.

That new version of the Camel CDI component provides the following:
h4. New features
CDI events Camel endpoint
Camel events to CDI events bridge
Type converter beans
OSGi integration
h4. Improvements
Better Camel context customisation and lifecycle
Better multiple Camel contexts support
{{@Uri}} and {{@Mock}} Endpoint Qualifiers Unification
h4. Compatibility
CDI 1.0, 1.1, 1.2
Java SE: Weld 1.x, Weld 2.x, OpenWebBeans 1.2.x, 1.6.x
Java EE: WildFly 8.x, 9.x, WildFly Camel
OSGi: Karaf 4
h4. Test coverage
100+ test cases
90% test coverage
Profiles for (CDI



  was:
Since version 2.10.0 of Camel, the Camel CDI component hasn't been actively 
maintained and suffers from few design flaws that impede improvements and new 
features.

Over the last couple of months, work has been done to refactor and improve the 
existing Camel CDI component. However, given that a redesign was required to 
make it more _CDI spirit_, the heavy work has been done in a separate project 
and the rational for an overhaul and the contribution list documented here: 
https://github.com/astefanutti/camel-cdi.

As people started using and contributing to it, it'd be better to have that 
improved version contributed back to the project as soon as possible to avoid 
diverging to much.

One point remaining though is the question of the compatibility across existing 
(and potentially future) CDI versions and how to deal with it. At the moment, 
there exist 3 versions of the specification, that are 1.0, 1.1 and 1.2 (2.0 
being work in progress).

I see three options: 
* Have separate Camel CDI components with the CDI version encoded in the 
artifact ids, like {{camel-cdi-1-0}}, {{camel-cdi-2-0}}, and so forth whenever 
it is necessary,
* Have a single Camel CDI component relying on CDI 1.0 only features,
* Drop support for older versions of CDI and support only the latest.


> Camel CDI component overhaul
> ----------------------------
>
>                 Key: CAMEL-9201
>                 URL: https://issues.apache.org/jira/browse/CAMEL-9201
>             Project: Camel
>          Issue Type: Improvement
>          Components: camel-cdi
>            Reporter: Antonin Stefanutti
>            Assignee: Antonin Stefanutti
>             Fix For: 2.17.0
>
>
> Since version 2.10.0 of Camel, the Camel CDI component hasn't been actively 
> maintained and suffers from few design flaws that impede improvements and new 
> features.
> Over the last couple of months, work has been done to refactor and improve 
> the existing Camel CDI component. However, given that a redesign was required 
> to make it more _CDI spirit_, the heavy work has been done in a separate 
> project and the rational for an overhaul and the contribution list documented 
> here: https://github.com/astefanutti/camel-cdi.
> As people started using and contributing to it, it'd be better to have that 
> improved version contributed back to the project as soon as possible to avoid 
> diverging to much.
> That new version of the Camel CDI component provides the following:
> h4. New features
> CDI events Camel endpoint
> Camel events to CDI events bridge
> Type converter beans
> OSGi integration
> h4. Improvements
> Better Camel context customisation and lifecycle
> Better multiple Camel contexts support
> {{@Uri}} and {{@Mock}} Endpoint Qualifiers Unification
> h4. Compatibility
> CDI 1.0, 1.1, 1.2
> Java SE: Weld 1.x, Weld 2.x, OpenWebBeans 1.2.x, 1.6.x
> Java EE: WildFly 8.x, 9.x, WildFly Camel
> OSGi: Karaf 4
> h4. Test coverage
> 100+ test cases
> 90% test coverage
> Profiles for (CDI



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to