Class DefaultServiceSelector

java.lang.Object
org.apache.avalon.framework.service.DefaultServiceSelector
All Implemented Interfaces:
org.apache.avalon.framework.service.ServiceSelector

public class DefaultServiceSelector extends Object implements org.apache.avalon.framework.service.ServiceSelector
This is the default implementation of the ServiceSelector
Version:
$Id: DefaultServiceSelector.java 30977 2004-07-30 03:57:54 -0500 (Fri, 30 Jul 2004) niclas $
Author:
Avalon Development Team
  • Field Details

    • m_objects

      private final HashMap m_objects
    • m_readOnly

      private boolean m_readOnly
    • m_role

      private final String m_role
  • Constructor Details

    • DefaultServiceSelector

      public DefaultServiceSelector()
      Create a DefaultServiceSelector with a default empty role.
    • DefaultServiceSelector

      public DefaultServiceSelector(String role)
      Create a DefaultServiceSelector with a role for debug purposes.
      Parameters:
      role - The role for this selector.
      Throws:
      NullPointerException - if the role is null.
  • Method Details

    • select

      public Object select(Object hint) throws org.apache.avalon.framework.service.ServiceException
      Select the desired object.
      Specified by:
      select in interface org.apache.avalon.framework.service.ServiceSelector
      Parameters:
      hint - the hint to retrieve Object
      Returns:
      the Object
      Throws:
      org.apache.avalon.framework.service.ServiceException - if an error occurs
    • isSelectable

      public boolean isSelectable(Object hint)
      Returns whether a Object exists or not
      Specified by:
      isSelectable in interface org.apache.avalon.framework.service.ServiceSelector
      Parameters:
      hint - the hint to retrieve Object
      Returns:
      true if the Object exists
    • release

      public void release(Object object)
      Release object.
      Specified by:
      release in interface org.apache.avalon.framework.service.ServiceSelector
      Parameters:
      object - the Object to release
    • put

      public void put(Object hint, Object object)
      Populate the ServiceSelector.
      Parameters:
      hint - the hint to be used to retrieve the Object later
      object - the Object to hold
    • getObjectMap

      protected final Map getObjectMap()
      Helper method for subclasses to retrieve object map.
      Returns:
      the object map
    • makeReadOnly

      public void makeReadOnly()
      Makes this service selector read-only.
    • checkWriteable

      protected final void checkWriteable() throws IllegalStateException
      Checks if this service selector is writeable.
      Throws:
      IllegalStateException - if this service selector is read-only