-
- All Known Implementing Classes:
- BeanContextServicesSupport.BCSSProxyServiceProvider
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.
-
-
Method Summary
Methods Modifier and Type Method and Description Iterator
getCurrentServiceSelectors(BeanContextServices bcs, Class serviceClass)
Invoked byBeanContextServices
, this method gets the current service selectors for the specified service.Object
getService(BeanContextServices bcs, Object requestor, Class serviceClass, Object serviceSelector)
Invoked byBeanContextServices
, this method requests an instance of a service from thisBeanContextServiceProvider
.void
releaseService(BeanContextServices bcs, Object requestor, Object service)
Invoked byBeanContextServices
, this method releases a nestedBeanContextChild
's (or any arbitrary object associated with aBeanContextChild
) reference to the specified service.
-
-
-
Method Detail
-
getService
Object getService(BeanContextServices bcs, Object requestor, Class serviceClass, Object serviceSelector)
Invoked byBeanContextServices
, this method requests an instance of a service from thisBeanContextServiceProvider
.- Parameters:
bcs
- TheBeanContextServices
associated with this particular request. This parameter enables theBeanContextServiceProvider
to distinguish service requests from multiple sources.requestor
- The object requesting the serviceserviceClass
- The service requestedserviceSelector
- the service dependent parameter for a particular service, ornull
if not applicable.- Returns:
- a reference to the requested service
-
releaseService
void releaseService(BeanContextServices bcs, Object requestor, Object service)
Invoked byBeanContextServices
, this method releases a nestedBeanContextChild
's (or any arbitrary object associated with aBeanContextChild
) reference to the specified service.- Parameters:
bcs
- theBeanContextServices
associated with this particular release requestrequestor
- the object requesting the service to be releasedservice
- the service that is to be released
-
getCurrentServiceSelectors
Iterator getCurrentServiceSelectors(BeanContextServices bcs, Class serviceClass)
Invoked byBeanContextServices
, 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.- Parameters:
bcs
- theBeanContextServices
for this requestserviceClass
- the specified service- Returns:
- the current service selectors for the specified serviceClass
-
-
Document created the 11/06/2005, last modified the 04/03/2020
Source of the printed document:https://www.gaudry.be/en/java-api-rf-java/beans/beancontext/beancontextserviceprovider.html
The infobrol is a personal site whose content is my sole responsibility. The text is available under CreativeCommons license (BY-NC-SA). More info on the terms of use and the author.
References
These references and links indicate documents consulted during the writing of this page, or which may provide additional information, but the authors of these sources can not be held responsible for the content of this page.
The author This site is solely responsible for the way in which the various concepts, and the freedoms that are taken with the reference works, are presented here. Remember that you must cross multiple source information to reduce the risk of errors.