[cdi-dev] [JBoss JIRA] (CDI-597) Make Principal unwrappable

Martin Kouba (JIRA) issues at jboss.org
Wed Apr 6 10:48:00 EDT 2016

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

Martin Kouba commented on CDI-597:

Hi Romain, so the client code would depend on a specific Principal impl, right? If so, then it would make sense to provide a bean for this type (on the Java EE container level - e.g. in the TomEE integration code) so that a client could inject it directly (I don't see a reason for portability here).

> Make Principal unwrappable
> --------------------------
>                 Key: CDI-597
>                 URL: https://issues.jboss.org/browse/CDI-597
>             Project: CDI Specification Issues
>          Issue Type: Epic
>            Reporter: Romain Manni-Bucau
> CDI allows to get injected a Principal but often you need to access the actual Principal instance when you need more than a name. Since the injection is a proxy (otherwise it would be broken in most of  scoped wrapper instances cases) we would need a CDI solution to unwrap this instance.
> Solution I see without creating a new kind of API but just something specific to this case: CDIPrincipal extends Principal { <T> T unwrap(Class<T> t) } and allow to get it injected directly as Principal today.
> This issue can be linked to CDI-10 but here it is safe to add unwrap() where on CDI-10 it is not (too general).

This message was sent by Atlassian JIRA

More information about the cdi-dev mailing list