Class ContextualStorage

java.lang.Object
com.vaadin.quarkus.context.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(boolean concurrent)
      Creates a new instance of storage.
      Parameters:
      concurrent - whether the ContextualStorage might get accessed concurrently by different threads
  • 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 - contextual instance type
      Parameters:
      bean - the contextual type
      creationalContext - a context
      Returns:
      a created contextual instance
    • 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.
      Type Parameters:
      T - bean type
      Parameters:
      bean - the contextual type
      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.
      Parameters:
      beanKey - a bean key
      Returns:
      the contextual type
      See Also: