Package com.vaadin.cdi.util
Class AbstractContext
java.lang.Object
com.vaadin.cdi.util.AbstractContext
- All Implemented Interfaces:
jakarta.enterprise.context.spi.Context
- Direct Known Subclasses:
RouteScopedContext,UIScopedContext,VaadinServiceScopedContext,VaadinSessionScopedContext
public abstract class AbstractContext
extends Object
implements jakarta.enterprise.context.spi.Context
A skeleton containing the most important parts of a custom CDI Context.
An implementing Context needs to implement the missing methods from the
Context interface and getContextualStorage(Contextual, boolean).-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedAbstractContext(jakarta.enterprise.inject.spi.BeanManager beanManager) -
Method Summary
Modifier and TypeMethodDescriptionprotected voidMake sure that the Context is really active.booleandestroy(jakarta.enterprise.context.spi.Contextual bean) Destroy the Contextual Instance of the given Bean.voiddestroys all the Contextual Instances in the Storage returned bygetContextualStorage(Contextual, boolean).static Map<Object, ContextualInstanceInfo<?>> destroyAllActive(ContextualStorage storage) Destroys all the Contextual Instances in the specified ContextualStorage.static voiddestroyBean(jakarta.enterprise.context.spi.Contextual bean, ContextualInstanceInfo<?> contextualInstanceInfo) <T> Tget(jakarta.enterprise.context.spi.Contextual<T> bean) <T> Tget(jakarta.enterprise.context.spi.Contextual<T> bean, jakarta.enterprise.context.spi.CreationalContext<T> creationalContext) protected List<ContextualStorage> protected abstract ContextualStoragegetContextualStorage(jakarta.enterprise.context.spi.Contextual<?> contextual, boolean createIfNotExist) An implementation has to return the underlying storage which contains the items held in the Context.booleanMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface jakarta.enterprise.context.spi.Context
getScope, isActive
-
Constructor Details
-
AbstractContext
protected AbstractContext(jakarta.enterprise.inject.spi.BeanManager beanManager)
-
-
Method Details
-
getContextualStorage
protected abstract ContextualStorage getContextualStorage(jakarta.enterprise.context.spi.Contextual<?> contextual, boolean createIfNotExist) 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
-
getActiveContextualStorages
-
isPassivatingScope
public boolean isPassivatingScope()- Returns:
- whether the served scope is a passivating scope
-
get
public <T> T get(jakarta.enterprise.context.spi.Contextual<T> bean) - Specified by:
getin interfacejakarta.enterprise.context.spi.Context
-
get
public <T> T get(jakarta.enterprise.context.spi.Contextual<T> bean, jakarta.enterprise.context.spi.CreationalContext<T> creationalContext) - Specified by:
getin interfacejakarta.enterprise.context.spi.Context
-
destroy
public boolean destroy(jakarta.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 void destroyAllActive()destroys all the Contextual Instances in the Storage returned bygetContextualStorage(Contextual, boolean). -
destroyAllActive
Destroys all the Contextual Instances in the specified ContextualStorage. This is a static method to allow various holder objects to cleanup properly in @PreDestroy. -
destroyBean
public static void destroyBean(jakarta.enterprise.context.spi.Contextual bean, ContextualInstanceInfo<?> contextualInstanceInfo) -
checkActive
protected void checkActive()Make sure that the Context is really active.- Throws:
jakarta.enterprise.context.ContextNotActiveException- if there is no active Context for the current Thread.
-