[cdi-dev] [JBoss JIRA] (CDI-284) Clarify AlterableContext corner cases

Pete Muir (JIRA) jira-events at lists.jboss.org
Tue Oct 30 13:05:04 EDT 2012


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

Pete Muir commented on CDI-284:
-------------------------------

Mostly fixed by https://github.com/jboss/cdi/pull/130
                
> Clarify AlterableContext corner cases
> -------------------------------------
>
>                 Key: CDI-284
>                 URL: https://issues.jboss.org/browse/CDI-284
>             Project: CDI Specification Issues
>          Issue Type: Clarification
>          Components: Contexts, Resolution
>    Affects Versions: 1.1.PRD
>            Reporter: Jozef Hartinger
>            Assignee: Pete Muir
>             Fix For: 1.1 (Proposed)
>
>
> There are some corner cases that are not well specified and should be improved:
> h3. Dependent scope
> The context for the @Dependent scope (DependentContext hereafter) is required to implement the AlterableContext interface. However, it is not possible to properly execute the DependentContext.destroy() method since the CreationalContext is not known.
> h3. Context not active
> The Javadoc for AlterableContext should say that the methods throws ContextNotActiveException if the method is invoked on a Context that is not active.
> h3. reflect CDI-24
> The spec should require the container to use a serializable Contextual not only for Context.get() methods but also for AlterableContext.destroy()
> https://issues.jboss.org/browse/CDI-24
> h3. Illegal arguments
> I am wondering whether the spec should be more strict and require better validation of AlterableContext.destroy() and Instance.destroy() parameters.
> For example:
> {code:JAVA}
> instance.destroy(new Object());
> {code}
> should probably be considered an illegal argument. That would at least be expected by users I guess. On the other hand, such validation would disallow certain optimizations that a container may currently do (e.g. keeping only those references to dependent objects that require cleanup on destruction)

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


More information about the cdi-dev mailing list