Class ContextualStorage

java.lang.Object
com.vaadin.cdi.util.ContextualStorage
All Implemented Interfaces:
Serializable

public class ContextualStorage extends Object implements Serializable
This Storage holds all information needed for storing Contextual Instances in a Context. It also addresses Serialisation in case of passivating scopes.
See Also:
  • Constructor Details

    • ContextualStorage

      public ContextualStorage(jakarta.enterprise.inject.spi.BeanManager beanManager, boolean concurrent, boolean passivationCapable)
      Parameters:
      beanManager - is needed for serialisation
      concurrent - whether the ContextualStorage might get accessed concurrently by different threads
      passivationCapable - whether the storage is for passivation capable Scopes
  • Method Details

    • getStorage

      public Map<Object,ContextualInstanceInfo<?>> getStorage()
      Returns:
      the underlying storage map.
    • isConcurrent

      public boolean isConcurrent()
      Returns:
      whether the ContextualStorage might get accessed concurrently by different threads.
    • createContextualInstance

      public <T> T createContextualInstance(jakarta.enterprise.context.spi.Contextual<T> bean, jakarta.enterprise.context.spi.CreationalContext<T> creationalContext)
      Type Parameters:
      T -
      Parameters:
      bean -
      creationalContext -
      Returns:
    • getBeanKey

      public <T> Object getBeanKey(jakarta.enterprise.context.spi.Contextual<T> bean)
      If the context is a passivating scope then we return the passivationId of the Bean. Otherwise we use the Bean directly.
      Returns:
      the key to use in the context map
    • getBean

      public jakarta.enterprise.context.spi.Contextual<?> getBean(Object beanKey)
      Restores the Bean from its beanKey.
      See Also: