Package org.apache.myfaces.flow.cdi
Class FlowScopedContextImpl
- java.lang.Object
-
- org.apache.myfaces.flow.cdi.FlowScopedContextImpl
-
- All Implemented Interfaces:
javax.enterprise.context.spi.Context
@Typed public class FlowScopedContextImpl extends Object implements javax.enterprise.context.spi.Context
Implementation of FlowScope.- Author:
- Leonardo Uribe
-
-
Constructor Summary
Constructors Constructor Description FlowScopedContextImpl(javax.enterprise.inject.spi.BeanManager beanManager, Map<Class,FlowReference> flowBeanReferences)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidcheckActive(FacesContext facesContext)Make sure that the Context is really active.booleandestroy(javax.enterprise.context.spi.Contextual bean)Destroy the Contextual Instance of the given Bean.static voiddestroyAllActive(ContextualStorage storage)Destroys all the Contextual Instances in the specified ContextualStorage.<T> Tget(javax.enterprise.context.spi.Contextual<T> bean)<T> Tget(javax.enterprise.context.spi.Contextual<T> bean, javax.enterprise.context.spi.CreationalContext<T> creationalContext)protected ContextualStoragegetContextualStorage(boolean createIfNotExist, String clientWindowFlowId)An implementation has to return the underlying storage which contains the items held in the Context.StringgetCurrentClientWindowFlowId(FacesContext facesContext)protected FlowScopeBeanHoldergetFlowScopeBeanHolder()protected FlowScopeBeanHoldergetFlowScopeBeanHolder(FacesContext facesContext)Class<? extends Annotation>getScope()booleanisActive()booleanisActive(FacesContext facesContext)booleanisPassivatingScope()
-
-
-
Constructor Detail
-
FlowScopedContextImpl
public FlowScopedContextImpl(javax.enterprise.inject.spi.BeanManager beanManager, Map<Class,FlowReference> flowBeanReferences)
-
-
Method Detail
-
getFlowScopeBeanHolder
protected FlowScopeBeanHolder getFlowScopeBeanHolder()
-
getFlowScopeBeanHolder
protected FlowScopeBeanHolder getFlowScopeBeanHolder(FacesContext facesContext)
-
getCurrentClientWindowFlowId
public String getCurrentClientWindowFlowId(FacesContext facesContext)
-
getContextualStorage
protected ContextualStorage getContextualStorage(boolean createIfNotExist, String clientWindowFlowId)
An implementation has to return the underlying storage which contains the items held in the Context.- Parameters:
createIfNotExist- whether a ContextualStorage shall get created if it doesn't yet exist.- Returns:
- the underlying storage
-
getScope
public Class<? extends Annotation> getScope()
- Specified by:
getScopein interfacejavax.enterprise.context.spi.Context
-
isActive
public boolean isActive()
- Specified by:
isActivein interfacejavax.enterprise.context.spi.Context
-
isActive
public boolean isActive(FacesContext facesContext)
-
isPassivatingScope
public boolean isPassivatingScope()
- Returns:
- whether the served scope is a passivating scope
-
get
public <T> T get(javax.enterprise.context.spi.Contextual<T> bean)
- Specified by:
getin interfacejavax.enterprise.context.spi.Context
-
get
public <T> T get(javax.enterprise.context.spi.Contextual<T> bean, javax.enterprise.context.spi.CreationalContext<T> creationalContext)- Specified by:
getin interfacejavax.enterprise.context.spi.Context
-
destroy
public boolean destroy(javax.enterprise.context.spi.Contextual bean)
Destroy the Contextual Instance of the given Bean.- Parameters:
bean- dictates which bean shall get cleaned up- Returns:
trueif the bean was destroyed,falseif there was no such bean.
-
destroyAllActive
public static void destroyAllActive(ContextualStorage storage)
Destroys all the Contextual Instances in the specified ContextualStorage. This is a static method to allow various holder objects to cleanup properly in @PreDestroy.
-
checkActive
protected void checkActive(FacesContext facesContext)
Make sure that the Context is really active.- Throws:
javax.enterprise.context.ContextNotActiveException- if there is no active Context for the current Thread.
-
-