[cdi-dev] [JBoss JIRA] (CDI-43) Allow Extensions to specify the annotations that they are interested in

Pete Muir (JIRA) jira-events at lists.jboss.org
Tue Aug 21 08:27:16 EDT 2012

    [ https://issues.jboss.org/browse/CDI-43?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12712674#comment-12712674 ] 

Pete Muir commented on CDI-43:

At the EG meeting we discussed this, and everyone agreed we should move ahead with it. These comments were made:

* That we need to define whether we look on not only the concrete class for annotations, but also super types (feeling was that we should)
* That this should be defined as a filter, not as a hint (ie. container will use this, not may use this)
* That we may want to consider scanning not only annotations but also meta annotations. Stuart, any comment on whether this will affect performance substantially.

We also discussed whether it should be RetentionPolicy.CLASS or RetentionPolicy.RUNTIME. Stuart proposed CLASS, as this is then available for a bytecode reader, but not for Reflection/classloading, which would allow an extension which defines this to continue running in CDI 1.0. In general, we felt this was not necessary, as most extensions will simply upgrade to CDI 1.1, and also make use of other CDI 1.1 features, such as new container lifecycle events.

We discussed naming, and concluded we need a different name.
> Allow Extensions to specify the annotations that they are interested in
> -----------------------------------------------------------------------
>                 Key: CDI-43
>                 URL: https://issues.jboss.org/browse/CDI-43
>             Project: CDI Specification Issues
>          Issue Type: Feature Request
>          Components: Portable Extensions
>    Affects Versions: 1.0
>            Reporter: Stuart Douglas
>             Fix For: 1.1 (Proposed)
> Currently portable extensions that wish to look for a specific annotation have to look through all availible classes in the ProcessAnnotatatedType event, which is quite inefficient. It would be good if extensions could do something like:
> public void processAnnotatedType(@Observes @RequireAnnotations({@Unwraps.class}) ProcessAnnotatedType pat) 
> This could allow the container to take advantage of annotation indexing to improve boot time performance, as well as reducing uneeded processing in the observer.

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.jboss.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira


More information about the cdi-dev mailing list