public class WrapperServiceSelector
extends java.lang.Object
ServiceSelector
implementation that can wrap around a legacy
ComponentSelector
object effectively adapting a ComponentSelector
interface to a ServiceSelector
interface.
This class implements the Component
interface because it is used in
environments which expect all components to implement Component.
Modifier and Type | Field and Description |
---|---|
private java.lang.String |
m_key
The role that this selector was aquired via.
|
private ComponentSelector |
m_selector
The Selector we are wrapping.
|
Constructor and Description |
---|
WrapperServiceSelector(java.lang.String key,
ComponentSelector selector)
This constructor is a constructor for a ComponentServiceManager
|
Modifier and Type | Method and Description |
---|---|
(package private) ComponentSelector |
getWrappedSelector()
The
WrapperServiceManager wraps ComponentSelectors in
WrapperServiceSelectors when they are looked up. |
boolean |
isSelectable(java.lang.Object policy)
Check to see if a
Object exists relative to the supplied policy. |
void |
release(java.lang.Object object)
Return the
Object when you are finished with it. |
java.lang.Object |
select(java.lang.Object policy)
Select a service based on a policy.
|
private final ComponentSelector m_selector
private final java.lang.String m_key
public WrapperServiceSelector(java.lang.String key, ComponentSelector selector)
key
- the key used to aquire this selectorselector
- the selector to wrappublic java.lang.Object select(java.lang.Object policy) throws ServiceException
policy
- the policyServiceException
- if unable to select servicepublic boolean isSelectable(java.lang.Object policy)
Object
exists relative to the supplied policy.policy
- a Object
containing the selection criteriapublic void release(java.lang.Object object)
Object
when you are finished with it. This
allows the ServiceSelector
to handle the End-Of-Life Lifecycle
events associated with the Object
. Please note, that no
Exception should be thrown at this point. This is to allow easy use of the
ServiceSelector system without having to trap Exceptions on a release.object
- The Object
we are releasing.ComponentSelector getWrappedSelector()
WrapperServiceManager
wraps ComponentSelectors in
WrapperServiceSelectors when they are looked up. This method
makes it possible to release the original component selector.ComponentSelector
being wrapped.