-
- All Known Subinterfaces:
AlterableContext
public interface Context
Provides an operation for obtaining contextual instances with a particular scope of any contextual type. Any instance of
Context
is called a context object.AlterableContext
was introduced in CDI 1.1 to allow bean instances to be destroyed by the application. Extensions should implementAlterableContext
instead ofContext
.The context object is responsible for creating and destroying contextual instances by calling operations of
Contextual
. In particular, the context object is responsible for destroying any contextual instance it creates by passing the instance toContextual.destroy(Object, CreationalContext)
. A destroyed instance must not subsequently be returned byget()
. The context object must pass the same instance ofCreationalContext
toContextual.destroy()
that it passed toContextual.create()
when it created the instance.A custom context object may be registered with the container using
AfterBeanDiscovery.addContext(Context)
.- Author:
- Gavin King, Pete Muir
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description <T> T
get(Contextual<T> contextual)
Return an existing instance of a certain contextual type or a null value.<T> T
get(Contextual<T> contextual, CreationalContext<T> creationalContext)
Return an existing instance of certain contextual type or create a new instance by callingContextual.create(CreationalContext)
and return the new instance.java.lang.Class<? extends java.lang.annotation.Annotation>
getScope()
Get the scope type of the context object.boolean
isActive()
Determines if the context object is active.
-
-
-
Method Detail
-
getScope
java.lang.Class<? extends java.lang.annotation.Annotation> getScope()
Get the scope type of the context object.- Returns:
- the scope
-
get
<T> T get(Contextual<T> contextual, CreationalContext<T> creationalContext)
Return an existing instance of certain contextual type or create a new instance by callingContextual.create(CreationalContext)
and return the new instance.- Type Parameters:
T
- the type of contextual type- Parameters:
contextual
- the contextual typecreationalContext
- the context in which the new instance will be created- Returns:
- the contextual instance
- Throws:
ContextNotActiveException
- if the context is not active
-
get
<T> T get(Contextual<T> contextual)
Return an existing instance of a certain contextual type or a null value.- Type Parameters:
T
- the type of the contextual type- Parameters:
contextual
- the contextual type- Returns:
- the contextual instance, or a null value
- Throws:
ContextNotActiveException
- if the context is not active
-
isActive
boolean isActive()
Determines if the context object is active.- Returns:
true
if the context is active, orfalse
otherwise.
-
-