[
https://issues.apache.org/jira/browse/EXTCDI-162?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13017829#comment-13017829
]
Jakob Korherr commented on EXTCDI-162:
--------------------------------------
+1 on automatically vetoing custom project stages!
extends ProjectStage means no CDI bean. should be easy to understand for
everyone!
> re-visit implementation of custom project stages.
> -------------------------------------------------
>
> Key: EXTCDI-162
> URL: https://issues.apache.org/jira/browse/EXTCDI-162
> Project: MyFaces CODI
> Issue Type: Task
> Components: Core
> Affects Versions: 0.9.4
> Reporter: Gerhard Petracek
>
> if users forget @Typed(), they would see an AmbiguousResolutionException.
> cdi-qualifiers aren't supported (in case of project-stages). so @Typed() is
> required all the time.
> currently valid example:
> public class CustomProjectStage implements ProjectStageHolder
> {
> @Typed()
> public static final class Debugging extends ProjectStage
> {
> private static final long serialVersionUID = -8626602281649294170L;
> }
> public static final Debugging Debugging = new Debugging();
> }
> since there is no support for cdi-qualifiers, we could veto those classes.
> that would allow to skip the @Typed() but the rest would be the same (because
> codi will still find them).
> pro: users don't have to use @Typed() explicitly (and they won't see the
> AmbiguousResolutionException, if they forget using @Typed())
> con: it isn't std. cdi - but adding @Typed() even though it isn't needed
> wouldn't harm.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira