[weld-issues] [JBoss JIRA] Closed: (WELDX-135) Support producers and observers on default beans

Pete Muir (JIRA) jira-events at lists.jboss.org
Wed Sep 22 10:21:28 EDT 2010


     [ https://jira.jboss.org/browse/WELDX-135?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Pete Muir closed WELDX-135.
---------------------------



> Support producers and observers on default beans
> ------------------------------------------------
>
>                 Key: WELDX-135
>                 URL: https://jira.jboss.org/browse/WELDX-135
>             Project: Weld Extensions
>          Issue Type: Feature Request
>    Affects Versions: 1.0.0.Alpha2
>            Reporter: Pete Muir
>            Assignee: Stuart Douglas
>             Fix For: 1.0.0.Beta1
>
>
> Changing the current implementation so it looks like:
> 1) Observe ProcessAnnotatedType and if the bean class is annotated @DefaultBean, replace qualifiers for the class, producers and observers with a synthetic qualifier and record that synthetic qualifier (e.g. Map<Class<?>, Annotation>) - we  need to do this for the bean class, and for the type of each producer
> 2) Observe ProcessBean, and if we get a bean with the synthetic qualifier, record it as belonging to the qualifier (e.g. Multimap<Annotation, Bean<?>>)
> 3) In AfterBeanDiscovery, for those default beans that are left, reset their qualifiers (wrap them as forwarding beans) and add them back in. The default bean type will become defaulted to the declared return type or the managed bean's declared type.
> This should lift all the limitations on default beans (e.g. no producers, no interceptors).
> Each producer will be totally independent of the declaring bean. So you could override the declaring bean, and not the producers, and still get the producers from the default bean (though this would be an unusual use case). The more common use case is that you wouldn't override the main bean, but would override the producer methods on it.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


More information about the weld-issues mailing list