Class DefaultComponentSelector

  • All Implemented Interfaces:
    org.apache.avalon.framework.component.Component, org.apache.avalon.framework.component.ComponentSelector

    public class DefaultComponentSelector
    extends java.lang.Object
    implements org.apache.avalon.framework.component.ComponentSelector
    This is the default implementation of the ComponentSelector.

    Deprecated: Use DefaultServiceSelector instead.

    Version:
    $Id: DefaultComponentSelector.java 30977 2004-07-30 03:57:54 -0500 (Fri, 30 Jul 2004) niclas $
    Author:
    Avalon Development Team
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private java.util.HashMap m_components  
      private boolean m_readOnly  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected void checkWriteable()
      Check if this component m_manager is writeable.
      protected java.util.Map getComponentMap()
      Helper method for subclasses to retrieve component map.
      boolean hasComponent​(java.lang.Object hint)
      Returns whether a Component exists or not
      void makeReadOnly()
      Make this component selector read-only.
      void put​(java.lang.Object hint, org.apache.avalon.framework.component.Component component)
      Populate the ComponentSelector.
      void release​(org.apache.avalon.framework.component.Component component)
      Release component.
      org.apache.avalon.framework.component.Component select​(java.lang.Object hint)
      Select the desired component.
      • Methods inherited from class java.lang.Object

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

      • m_components

        private final java.util.HashMap m_components
      • m_readOnly

        private boolean m_readOnly
    • Constructor Detail

      • DefaultComponentSelector

        public DefaultComponentSelector()
    • Method Detail

      • select

        public org.apache.avalon.framework.component.Component select​(java.lang.Object hint)
                                                               throws org.apache.avalon.framework.component.ComponentException
        Select the desired component. It does not cascade, neither should it.
        Specified by:
        select in interface org.apache.avalon.framework.component.ComponentSelector
        Parameters:
        hint - the hint to retrieve Component
        Returns:
        the Component
        Throws:
        org.apache.avalon.framework.component.ComponentException - if an error occurs
      • hasComponent

        public boolean hasComponent​(java.lang.Object hint)
        Returns whether a Component exists or not
        Specified by:
        hasComponent in interface org.apache.avalon.framework.component.ComponentSelector
        Parameters:
        hint - the hint to retrieve Component
        Returns:
        true if the Component exists
      • release

        public void release​(org.apache.avalon.framework.component.Component component)
        Release component.
        Specified by:
        release in interface org.apache.avalon.framework.component.ComponentSelector
        Parameters:
        component - the component
      • put

        public void put​(java.lang.Object hint,
                        org.apache.avalon.framework.component.Component component)
        Populate the ComponentSelector.
        Parameters:
        hint - the hint to retrieve Component
        component - the component to add
      • getComponentMap

        protected final java.util.Map getComponentMap()
        Helper method for subclasses to retrieve component map.
        Returns:
        the component map
      • makeReadOnly

        public void makeReadOnly()
        Make this component selector read-only.
      • checkWriteable

        protected final void checkWriteable()
                                     throws java.lang.IllegalStateException
        Check if this component m_manager is writeable.
        Throws:
        java.lang.IllegalStateException - if this component m_manager is read-only