Class EmptyPicoContainer

  • All Implemented Interfaces:
    java.io.Serializable, Converting, PicoContainer

    public class EmptyPicoContainer
    extends java.lang.Object
    implements PicoContainer, Converting, java.io.Serializable
    Empty pico container serving as recoil damper in situations where you do not like to check whether container reference supplied to you is null or not
    Author:
    Konstantin Pribluda
    See Also:
    Serialized Form
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void accept​(PicoVisitor visitor)
      we do not have anything to do here.
      <T> T getComponent​(java.lang.Class<T> componentType)
      Retrieve a component keyed by the component type.
      <T> T getComponent​(java.lang.Class<T> componentType, java.lang.Class<? extends java.lang.annotation.Annotation> binding)
      Retrieve a component keyed by the component type and binding type.
      java.lang.Object getComponent​(java.lang.Object componentKeyOrType)
      Retrieve a component instance registered with a specific key or type.
      java.lang.Object getComponent​(java.lang.Object componentKeyOrType, java.lang.reflect.Type into)  
      <T> ComponentAdapter<T> getComponentAdapter​(java.lang.Class<T> componentType, java.lang.Class<? extends java.lang.annotation.Annotation> binding)
      Find a component adapter associated with the specified type and binding type.
      <T> ComponentAdapter<T> getComponentAdapter​(java.lang.Class<T> componentType, NameBinding componentNameBinding)
      Find a component adapter associated with the specified type and binding name.
      ComponentAdapter<?> getComponentAdapter​(java.lang.Object componentKey)
      Find a component adapter associated with the specified key.
      java.util.Collection<ComponentAdapter<?>> getComponentAdapters()
      Retrieve all the component adapters inside this container.
      <T> java.util.List<ComponentAdapter<T>> getComponentAdapters​(java.lang.Class<T> componentType)
      Retrieve all component adapters inside this container that are associated with the specified type.
      <T> java.util.List<ComponentAdapter<T>> getComponentAdapters​(java.lang.Class<T> componentType, java.lang.Class<? extends java.lang.annotation.Annotation> binding)
      Retrieve all component adapters inside this container that are associated with the specified type and binding type.
      java.util.List getComponents()
      Retrieve all the registered component instances in the container, (not including those in the parent container).
      <T> java.util.List<T> getComponents​(java.lang.Class<T> componentType)
      Returns a List of components of a certain componentType.
      Converters getConverters()
      Retrieve the set of converters for transforming string parameters into objects.
      PicoContainer getParent()
      Retrieve the parent container of this container.
      java.lang.String toString()  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Constructor Detail

      • EmptyPicoContainer

        public EmptyPicoContainer()
    • Method Detail

      • getComponent

        public java.lang.Object getComponent​(java.lang.Object componentKeyOrType)
        Description copied from interface: PicoContainer
        Retrieve a component instance registered with a specific key or type. If a component cannot be found in this container, the parent container (if one exists) will be searched.
        Specified by:
        getComponent in interface PicoContainer
        Parameters:
        componentKeyOrType - the key or Type that the component was registered with.
        Returns:
        an instantiated component, or null if no component has been registered for the specified key.
      • getComponent

        public java.lang.Object getComponent​(java.lang.Object componentKeyOrType,
                                             java.lang.reflect.Type into)
        Specified by:
        getComponent in interface PicoContainer
      • getComponent

        public <T> T getComponent​(java.lang.Class<T> componentType)
        Description copied from interface: PicoContainer
        Retrieve a component keyed by the component type.
        Specified by:
        getComponent in interface PicoContainer
        Parameters:
        componentType - the type of the component
        Returns:
        the typed resulting object instance or null if the object does not exist.
      • getComponent

        public <T> T getComponent​(java.lang.Class<T> componentType,
                                  java.lang.Class<? extends java.lang.annotation.Annotation> binding)
        Description copied from interface: PicoContainer
        Retrieve a component keyed by the component type and binding type.
        Specified by:
        getComponent in interface PicoContainer
        Parameters:
        componentType - the type of the component
        binding - the binding type of the component
        Returns:
        the typed resulting object instance or null if the object does not exist.
      • getComponents

        public java.util.List getComponents()
        Description copied from interface: PicoContainer
        Retrieve all the registered component instances in the container, (not including those in the parent container). The components are returned in their order of instantiation, which depends on the dependency order between them.
        Specified by:
        getComponents in interface PicoContainer
        Returns:
        all the components.
      • getComponentAdapter

        public ComponentAdapter<?> getComponentAdapter​(java.lang.Object componentKey)
        Description copied from interface: PicoContainer
        Find a component adapter associated with the specified key. If a component adapter cannot be found in this container, the parent container (if one exists) will be searched.
        Specified by:
        getComponentAdapter in interface PicoContainer
        Parameters:
        componentKey - the key that the component was registered with.
        Returns:
        the component adapter associated with this key, or null if no component has been registered for the specified key.
      • getComponentAdapter

        public <T> ComponentAdapter<T> getComponentAdapter​(java.lang.Class<T> componentType,
                                                           NameBinding componentNameBinding)
        Description copied from interface: PicoContainer
        Find a component adapter associated with the specified type and binding name. If a component adapter cannot be found in this container, the parent container (if one exists) will be searched.
        Specified by:
        getComponentAdapter in interface PicoContainer
        Parameters:
        componentType - the type of the component.
        componentNameBinding - the name binding to use
        Returns:
        the component adapter associated with this class, or null if no component has been registered for the specified key.
      • getComponentAdapter

        public <T> ComponentAdapter<T> getComponentAdapter​(java.lang.Class<T> componentType,
                                                           java.lang.Class<? extends java.lang.annotation.Annotation> binding)
        Description copied from interface: PicoContainer
        Find a component adapter associated with the specified type and binding type. If a component adapter cannot be found in this container, the parent container (if one exists) will be searched.
        Specified by:
        getComponentAdapter in interface PicoContainer
        Parameters:
        componentType - the type of the component.
        binding - the typed binding to use
        Returns:
        the component adapter associated with this class, or null if no component has been registered for the specified key.
      • getComponentAdapters

        public <T> java.util.List<ComponentAdapter<T>> getComponentAdapters​(java.lang.Class<T> componentType)
        Description copied from interface: PicoContainer
        Retrieve all component adapters inside this container that are associated with the specified type. The addComponent adapters from the parent container are not returned.
        Specified by:
        getComponentAdapters in interface PicoContainer
        Parameters:
        componentType - the type of the components.
        Returns:
        a collection containing all the ComponentAdapters inside this container that are associated with the specified type. Changes to this collection will not be reflected in the container itself.
      • getComponentAdapters

        public <T> java.util.List<ComponentAdapter<T>> getComponentAdapters​(java.lang.Class<T> componentType,
                                                                            java.lang.Class<? extends java.lang.annotation.Annotation> binding)
        Description copied from interface: PicoContainer
        Retrieve all component adapters inside this container that are associated with the specified type and binding type. The addComponent adapters from the parent container are not returned.
        Specified by:
        getComponentAdapters in interface PicoContainer
        Parameters:
        componentType - the type of the components.
        binding - the typed binding to use
        Returns:
        a collection containing all the ComponentAdapters inside this container that are associated with the specified type. Changes to this collection will not be reflected in the container itself.
      • accept

        public void accept​(PicoVisitor visitor)
        we do not have anything to do here.
        Specified by:
        accept in interface PicoContainer
        Parameters:
        visitor - the visitor
      • getComponents

        public <T> java.util.List<T> getComponents​(java.lang.Class<T> componentType)
        Returns a List of components of a certain componentType. The list is ordered by instantiation order, starting with the components instantiated first at the beginning.
        Specified by:
        getComponents in interface PicoContainer
        Parameters:
        componentType - the searched type.
        Returns:
        a List of components.
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
      • getConverters

        public Converters getConverters()
        Description copied from interface: Converting
        Retrieve the set of converters for transforming string parameters into objects.
        Specified by:
        getConverters in interface Converting
        Returns:
        converter set instance.