public interface ServiceSelector
ServiceSelector
selects Object
s based on a
supplied policy. The contract is that all the Object
s implement the
same role.Serviceable
,
ServiceSelector
Modifier and Type | Method and Description |
---|---|
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 the
Object associated with the given policy. |
java.lang.Object select(java.lang.Object policy) throws ServiceException
Object
associated with the given policy.
For instance, If the ServiceSelector
has a
Generator
stored and referenced by a URL, the
following call could be used:
try { Generator input; input = (Generator)selector.select( new URL("foo://demo/url") ); } catch (...) { ... }
policy
- A criteria against which a Object
is selected.Object
valueServiceException
- If the requested Object
cannot be suppliedboolean isSelectable(java.lang.Object policy)
Object
exists relative to the supplied policy.policy
- a Object
containing the selection criteriavoid 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.