[cdi-dev] [JBoss JIRA] (CDI-420) add a bean-discovery-mode 'scoped'

Mark Struberg (JIRA) issues at jboss.org
Fri Jun 10 02:34:00 EDT 2016


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

Mark Struberg edited comment on CDI-420 at 6/10/16 2:33 AM:
------------------------------------------------------------

[~mkouba] My main argument is that nobody was able to show any benefit over the simple form yet. 

I cannot _yet_ see any use case beyond "<process><exclude name="*">". And "<if-no-bean-defining-annotation />" is again so specific that it is not reusable for other cases. So it basically can be reduced to

{code}
<beans>
    <skip-bean-if-no-bean-defining-annotation />
{code}

Bring me good use cases where your additional sugar is useful and I'm sold ;)

  


was (Author: struberg):
[~mkouba] My main argument is that nobody was able to show any benefit over the simple form yet. 

I cannot _yet_ see any use case beyond "<process><exclude name="*">". And "<if-no-bean-defining-annotation />" is again so specific that it is not reusable for other cases. So it basically can be reduced to

{code}
<beans>
    <exclude-if-no-bean-defining-annotation />
{code}

Bring me good use cases where your additional sugar is useful and I'm sold ;)

  

> add a bean-discovery-mode 'scoped'
> ----------------------------------
>
>                 Key: CDI-420
>                 URL: https://issues.jboss.org/browse/CDI-420
>             Project: CDI Specification Issues
>          Issue Type: Bug
>          Components: Packaging and Deployment
>    Affects Versions: TBD
>            Reporter: Mark Struberg
>             Fix For: 2.0 (discussion)
>
>
> This is for some future CDI release.
> We currently only have 3 bean-discovery-modes
> * none
> * all
> * annotated
> The spec also currently says that ProcessAnnotatedType will only get fired (12.4) for 
> • each Java class, interface or enum deployed in an explicit bean archive, and 
> • each Java class with a bean defining annotation in an implicit bean archive. 
> • each session bean
> Which means that we do not get the ProcessAnnotatedType (PAT) event for any class in an 'annotated' or 'implicit' BDA which does _not_ have a bean defining annotation. 
> It might be useful to fire the ProcessAnnotatedType for all classes, but do not pick them up as Beans if they (after PAT) do not have a valid scope. Effectively doing the processing but not make them @Dependent automatically if there is no scope annotation at the end of the PAT processing.
> I'm not yet 100% sure how important this distinction is in practice. Just writing this up to not forget about the idea...



--
This message was sent by Atlassian JIRA
(v6.4.11#64026)



More information about the cdi-dev mailing list