[ 
https://issues.apache.org/jira/browse/DELTASPIKE-172?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13415050#comment-13415050
 ] 

Mark Struberg commented on DELTASPIKE-172:
------------------------------------------

The only thing we can do is to raise attention and awareness by logging a 
warning in development. We neither can provide a fix nor can we return 
something different. 

It's really use case specific and it's not even an error in any case!. E.g. if 
you use this method to pick up a class (without Interceptors or Decorators) and 
store it in a static field, then this is perfectly fine.

If we would require our users to use a different method for @Dependent beans, 
then the users would need to do a check upfront -> that's not fine neither.
                
> Improve BeanProvider
> --------------------
>
>                 Key: DELTASPIKE-172
>                 URL: https://issues.apache.org/jira/browse/DELTASPIKE-172
>             Project: DeltaSpike
>          Issue Type: Improvement
>            Reporter: Romain Manni-Bucau
>            Assignee: Mark Struberg
>             Fix For: 0.3-incubating
>
>
> BeanProvider is a very cool way to get bean from not managed objects but it 
> is not so cool to use with @Dependent CDI Beans because it is not cleanable
> return with the bean the creational context can help to do so ("you are not 
> managed so clean it yourself")
> instead of returning the bean a wrapper could be returned like for instance 
> (this class should be enhanced since it manages only one dependent instance):
> public class BeanInstance {
>     private Object bean;
>     private CreationalContext<?> context;
>     public BeanInstance(Object bean, CreationalContext<?> context) {
>         this.bean = bean;
>         this.context = context;
>     }
>     public boolean isResolved() {
>         return bean != null;
>     }
>     public Object getBean() {
>         return bean;
>     }
>     public void release() {
>         context.release();
>     }
> }

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

        

Reply via email to