org.apache.avalon.fortress.impl.lookup
Class FortressServiceSelector

java.lang.Object
  extended by org.apache.avalon.fortress.impl.lookup.FortressServiceSelector
All Implemented Interfaces:
org.apache.avalon.framework.service.ServiceSelector

public class FortressServiceSelector
extends java.lang.Object
implements org.apache.avalon.framework.service.ServiceSelector

This is the Default ServiceSelector for the Container. It provides a very simple abstraction, and makes it easy for the Container to manage the references.

Version:
CVS $Revision: 1.19 $ $Date: 2004/03/13 17:57:59 $
Author:
Avalon Development Team

Field Summary
private  org.apache.avalon.fortress.Container m_container
           
private  java.lang.String m_key
           
private  java.util.Map m_used
           
 
Constructor Summary
FortressServiceSelector(org.apache.avalon.fortress.Container container, java.lang.String key)
          Creation of new service selector.
 
Method Summary
private  ComponentHandler getHandler(java.lang.Object hint)
           
 java.lang.String getKey()
           
 boolean isSelectable(java.lang.Object hint)
           
 void release(java.lang.Object component)
           
 java.lang.Object select(java.lang.Object hint)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

m_key

private final java.lang.String m_key

m_container

private final org.apache.avalon.fortress.Container m_container

m_used

private final java.util.Map m_used
Constructor Detail

FortressServiceSelector

public FortressServiceSelector(org.apache.avalon.fortress.Container container,
                               java.lang.String key)
Creation of new service selector.

Parameters:
container - the impl
key - a key
Method Detail

select

public java.lang.Object select(java.lang.Object hint)
                        throws org.apache.avalon.framework.service.ServiceException
Specified by:
select in interface org.apache.avalon.framework.service.ServiceSelector
Throws:
org.apache.avalon.framework.service.ServiceException

isSelectable

public boolean isSelectable(java.lang.Object hint)
Specified by:
isSelectable in interface org.apache.avalon.framework.service.ServiceSelector

release

public void release(java.lang.Object component)
Specified by:
release in interface org.apache.avalon.framework.service.ServiceSelector

getHandler

private ComponentHandler getHandler(java.lang.Object hint)
                             throws org.apache.avalon.framework.service.ServiceException
Throws:
org.apache.avalon.framework.service.ServiceException

getKey

public java.lang.String getKey()