A
ComponentManager
selects
Component
s based on a role. The contract is that all the
Component
s implement the differing roles and there is one
Component
per role. If you need to select on of many
Component
s that implement the same role, then you need to use a
ComponentSelector
. Roles are usually the full interface name.
A role is better understood by the analogy of a play. There are many different roles in a script. Any actor or actress can play any given part and you get the same results (phrases said, movements made, etc.). The exact nuances of the performance is different.
Below is a list of things that might be considered the different roles:
- InputAdapter and OutputAdapter
- Store and Spool
The ComponentManager
does not specify the methodology of getting the Component
, merely the interface used to get it. Therefore the ComponentManager
can be implemented with a factory pattern, an object pool, or a simple Hashtable.
Deprecated: Use {@link org.apache.avalon.framework.service.ServiceManager} instead.
@see org.apache.avalon.framework.component.Component
@see org.apache.avalon.framework.component.Composable
@see org.apache.avalon.framework.component.ComponentSelector
@author
Avalon Development Team
@version CVS $Revision: 1.21 $ $Date: 2004/02/11 14:34:24 $