public interface BeanContextServiceProvider
One of the primary functions of a BeanContext is to act a as rendezvous between JavaBeans, and BeanContextServiceProviders.
A JavaBean nested within a BeanContext, may ask that BeanContext to provide an instance of a "service", based upon a reference to a Java Class object that represents that service.
If such a service has been registered with the context, or one of its nesting context's, in the case where a context delegate to its context to satisfy a service request, then the BeanContextServiceProvider associated with the service is asked to provide an instance of that service.
The ServcieProvider may always return the same instance, or it may construct a new instance for each request.
| Modifier and Type | Method and Description |
|---|---|
Iterator<?> |
getCurrentServiceSelectors(BeanContextServices bcs,
Class<?> serviceClass)
Invoked by
BeanContextServices, this method
gets the current service selectors for the specified service. |
Object |
getService(BeanContextServices bcs,
Object requestor,
Class<?> serviceClass,
Object serviceSelector)
Invoked by
BeanContextServices, this method
requests an instance of a
service from this BeanContextServiceProvider. |
void |
releaseService(BeanContextServices bcs,
Object requestor,
Object service)
Invoked by
BeanContextServices,
this method releases a nested BeanContextChild's
(or any arbitrary object associated with a
BeanContextChild) reference to the specified service. |
Object getService(BeanContextServices bcs, Object requestor, Class<?> serviceClass, Object serviceSelector)
BeanContextServices, this method
requests an instance of a
service from this BeanContextServiceProvider.bcs - The BeanContextServices associated with this
particular request. This parameter enables the
BeanContextServiceProvider to distinguish service
requests from multiple sources.requestor - The object requesting the serviceserviceClass - The service requestedserviceSelector - the service dependent parameter
for a particular service, or null if not applicable.void releaseService(BeanContextServices bcs, Object requestor, Object service)
BeanContextServices,
this method releases a nested BeanContextChild's
(or any arbitrary object associated with a
BeanContextChild) reference to the specified service.bcs - the BeanContextServices associated with this
particular release requestrequestor - the object requesting the service to be releasedservice - the service that is to be releasedIterator<?> getCurrentServiceSelectors(BeanContextServices bcs, Class<?> serviceClass)
BeanContextServices, this method
gets the current service selectors for the specified service.
A service selector is a service specific parameter,
typical examples of which could include: a
parameter to a constructor for the service implementation class,
a value for a particular service's property, or a key into a
map of existing implementations.bcs - the BeanContextServices for this requestserviceClass - the specified service Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2016, Oracle and/or its affiliates. All rights reserved.
DRAFT 9-internal+0-2016-01-26-133437.ivan.openjdk9onspinwait