Class EnvironmentImpl

  • All Implemented Interfaces:
    Environment

    public class EnvironmentImpl
    extends java.lang.Object
    implements Environment
    A non-threadsafe implementation (expects to use the "perthread" service lifecyle).
    • Constructor Summary

      Constructors 
      Constructor Description
      EnvironmentImpl()  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void cloak()
      Hides all current environment values, making the Environment object appear empty, until a call to Environment.decloak()} restores the original state.
      void decloak()
      Restores state previously hidden by Environment.cloak()}.
      <T> T peek​(java.lang.Class<T> type)
      Peeks at the current top of the indicated stack.
      <T> T peekRequired​(java.lang.Class<T> type)
      Peeks at the current top of the indicated stack (which must have a non-null value).
      <T> T pop​(java.lang.Class<T> type)
      Removes and returns the top environmental object of the selected type.
      <T> T push​(java.lang.Class<T> type, T instance)
      Pushes a new service onto the stack.
      void threadDidCleanup()  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Method Detail

      • peek

        public <T> T peek​(java.lang.Class<T> type)
        Description copied from interface: Environment
        Peeks at the current top of the indicated stack.
        Specified by:
        peek in interface Environment
        Type Parameters:
        T - the type of environmental object
        Parameters:
        type - class used to select the object
        Returns:
        the current object of that type, or null if no service of that type has been added
      • peekRequired

        public <T> T peekRequired​(java.lang.Class<T> type)
        Description copied from interface: Environment
        Peeks at the current top of the indicated stack (which must have a non-null value).
        Specified by:
        peekRequired in interface Environment
        Type Parameters:
        T - the type of environmental object
        Parameters:
        type - class used to select the object
        Returns:
        the current object of the specified type
      • pop

        public <T> T pop​(java.lang.Class<T> type)
        Description copied from interface: Environment
        Removes and returns the top environmental object of the selected type.
        Specified by:
        pop in interface Environment
        Type Parameters:
        T - the type of environmental object
        Parameters:
        type - class used to select the object
        Returns:
        the object just removed
      • push

        public <T> T push​(java.lang.Class<T> type,
                          T instance)
        Description copied from interface: Environment
        Pushes a new service onto the stack. The old service at the top of the stack is returned (it may be null).
        Specified by:
        push in interface Environment
        Type Parameters:
        T - the type of environmental object
        Parameters:
        type - class used to select the object
        instance - the service object
        Returns:
        the previous top service