Class UnSharedContext<K>

java.lang.Object
org.exoplatform.container.context.AbstractContext<K>
org.exoplatform.container.context.UnSharedContext<K>
All Implemented Interfaces:
javax.enterprise.context.spi.Context, ThreadContextHolder, AdvancedContext<K>
Direct Known Subclasses:
RequestContext

public abstract class UnSharedContext<K> extends AbstractContext<K>
This is the root class of all the unshared contexts, it relies on a thread local
  • Constructor Details

    • UnSharedContext

      public UnSharedContext()
  • Method Details

    • unregister

      public void unregister(K key)
      Unregisters a given key from the context
      Specified by:
      unregister in interface AdvancedContext<K>
      Overrides:
      unregister in class AbstractContext<K>
      Parameters:
      key - the key to unregister
    • deactivate

      public void deactivate(K key)
      Deactivates the current context using the given key from the context of the thread
      Specified by:
      deactivate in interface AdvancedContext<K>
      Overrides:
      deactivate in class AbstractContext<K>
      Parameters:
      key - the key to use to deactivate the context
    • isSharable

      protected final boolean isSharable()
      Indicates whether the objects of the context that can shared or not. sharable
      Specified by:
      isSharable in class AbstractContext<K>
      Returns:
      true if the components are sharable, false otherwise.
    • getLock

      protected final Lock getLock(String id)
      In case the context is sharable, we will need a lock to synchronize the accesses
      Specified by:
      getLock in class AbstractContext<K>
      Parameters:
      id - the id of the contextual for which we want a lock
      Returns:
      a lock corresponding to the given contextual within the current context