FileDocCategorySizeDatePackage
BeanContextServices.javaAPI DocJava SE 5 API5945Fri Aug 26 14:56:58 BST 2005java.beans.beancontext

BeanContextServices

public interface BeanContextServices implements BeanContext, BeanContextServicesListener

The BeanContextServices interface provides a mechanism for a BeanContext to expose generic "services" to the BeanContextChild objects within.

Fields Summary
Constructors Summary
Methods Summary
public voidaddBeanContextServicesListener(java.beans.beancontext.BeanContextServicesListener bcsl)
Adds a BeanContextServicesListener to this BeanContext

param
bcsl the BeanContextServicesListener to add

public booleanaddService(java.lang.Class serviceClass, java.beans.beancontext.BeanContextServiceProvider serviceProvider)
Adds a service to this BeanContext. BeanContextServiceProviders call this method to register a particular service with this context. If the service has not previously been added, the BeanContextServices associates the service with the BeanContextServiceProvider and fires a BeanContextServiceAvailableEvent to all currently registered BeanContextServicesListeners. The method then returns true, indicating that the addition of the service was successful. If the given service has already been added, this method simply returns false.

param
serviceClass the service to add
param
serviceProvider the BeanContextServiceProvider associated with the service

public java.util.IteratorgetCurrentServiceClasses()
Gets the currently available services for this context.

return
an Iterator consisting of the currently available services

public java.util.IteratorgetCurrentServiceSelectors(java.lang.Class serviceClass)
Gets the list of service dependent service parameters (Service Selectors) for the specified service, by calling getCurrentServiceSelectors() on the underlying BeanContextServiceProvider.

param
serviceClass the specified service
return
the currently available service selectors for the named serviceClass

public java.lang.ObjectgetService(java.beans.beancontext.BeanContextChild child, java.lang.Object requestor, java.lang.Class serviceClass, java.lang.Object serviceSelector, java.beans.beancontext.BeanContextServiceRevokedListener bcsrl)
A BeanContextChild, or any arbitrary object associated with a BeanContextChild, may obtain a reference to a currently registered service from its nesting BeanContextServices via invocation of this method. When invoked, this method gets the service by calling the getService() method on the underlying BeanContextServiceProvider.

param
child the BeanContextChild associated with this request
param
requestor the object requesting the service
param
serviceClass class of the requested service
param
serviceSelector the service dependent parameter
param
bcsrl the BeanContextServiceRevokedListener to notify if the service should later become revoked
throws
TooManyListenersException
return
a reference to this context's named Service as requested or null

public booleanhasService(java.lang.Class serviceClass)
Reports whether or not a given service is currently available from this context.

param
serviceClass the service in question
return
true if the service is available

public voidreleaseService(java.beans.beancontext.BeanContextChild child, java.lang.Object requestor, java.lang.Object service)
Releases a BeanContextChild's (or any arbitrary object associated with a BeanContextChild) reference to the specified service by calling releaseService() on the underlying BeanContextServiceProvider.

param
child the BeanContextChild
param
requestor the requestor
param
service the service

public voidremoveBeanContextServicesListener(java.beans.beancontext.BeanContextServicesListener bcsl)
Removes a BeanContextServicesListener from this BeanContext

param
bcsl the BeanContextServicesListener to remove from this context

public voidrevokeService(java.lang.Class serviceClass, java.beans.beancontext.BeanContextServiceProvider serviceProvider, boolean revokeCurrentServicesNow)
BeanContextServiceProviders wishing to remove a currently registered service from this context may do so via invocation of this method. Upon revocation of the service, the BeanContextServices fires a BeanContextServiceRevokedEvent to its list of currently registered BeanContextServiceRevokedListeners and BeanContextServicesListeners.

param
serviceClass the service to revoke from this BeanContextServices
param
serviceProvider the BeanContextServiceProvider associated with this particular service that is being revoked
param
revokeCurrentServicesNow a value of true indicates an exceptional circumstance where the BeanContextServiceProvider or BeanContextServices wishes to immediately terminate service to all currently outstanding references to the specified service.