BeanContextServices (Java 2 Platform SE 5.0)
java.beans.beancontext
Interface BeanContextServices
- All Superinterfaces:
- BeanContext, BeanContextChild, BeanContextServiceRevokedListener, BeanContextServicesListener, Collection, DesignMode, EventListener, Iterable, Visibility
- All Known Implementing Classes:
- BeanContextServicesSupport
public interface BeanContextServices
- extends BeanContext, BeanContextServicesListener
The BeanContextServices interface provides a mechanism for a BeanContext to expose generic "services" to the BeanContextChild objects within.
| Field Summary |
|---|
| Fields inherited from interface java.beans.beancontext.BeanContext |
|---|
globalHierarchyLock |
| Fields inherited from interface java.beans.DesignMode |
|---|
PROPERTYNAME |
| Method Summary | |
|---|---|
void |
addBeanContextServicesListener(BeanContextServicesListener bcsl)
Adds a BeanContextServicesListener to this BeanContext |
boolean |
addService(Class serviceClass,
BeanContextServiceProvider serviceProvider)
Adds a service to this BeanContext. |
Iterator |
getCurrentServiceClasses()
Gets the currently available services for this context. |
Iterator |
getCurrentServiceSelectors(Class serviceClass)
Gets the list of service dependent service parameters (Service Selectors) for the specified service, by calling getCurrentServiceSelectors() on the underlying BeanContextServiceProvider. |
Object |
getService(BeanContextChild child,
Object requestor,
Class serviceClass,
Object serviceSelector,
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. |
boolean |
hasService(Class serviceClass)
Reports whether or not a given service is currently available from this context. |
void |
releaseService(BeanContextChild child,
Object requestor,
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. |
void |
removeBeanContextServicesListener(BeanContextServicesListener bcsl)
Removes a BeanContextServicesListener
from this BeanContext |
void |
revokeService(Class serviceClass,
BeanContextServiceProvider serviceProvider,
boolean revokeCurrentServicesNow)
BeanContextServiceProviders wishing to remove a currently registered service from this context may do so via invocation of this method. |
| Methods inherited from interface java.beans.beancontext.BeanContext |
|---|
addBeanContextMembershipListener, getResource, getResourceAsStream, instantiateChild, removeBeanContextMembershipListener |
| Methods inherited from interface java.beans.beancontext.BeanContextChild |
|---|
addPropertyChangeListener, addVetoableChangeListener, getBeanContext, removePropertyChangeListener, removeVetoableChangeListener, setBeanContext |
| Methods inherited from interface java.util.Collection |
|---|
add, addAll, clear, contains, containsAll, equals, hashCode, isEmpty, iterator, remove, removeAll, retainAll, size, toArray, toArray |
| Methods inherited from interface java.beans.DesignMode |
|---|
isDesignTime, setDesignTime |
| Methods inherited from interface java.beans.Visibility |
|---|
avoidingGui, dontUseGui, needsGui, okToUseGui |
| Methods inherited from interface java.beans.beancontext.BeanContextServicesListener |
|---|
serviceAvailable |
| Methods inherited from interface java.beans.beancontext.BeanContextServiceRevokedListener |
|---|
serviceRevoked |
| Method Detail |
|---|
addService
boolean addService(Class serviceClass, 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, theBeanContextServicesassociates the service with theBeanContextServiceProviderand fires aBeanContextServiceAvailableEventto all currently registeredBeanContextServicesListeners. The method then returnstrue, indicating that the addition of the service was successful. If the given service has already been added, this method simply returnsfalse. - Parameters:
serviceClass- the service to addserviceProvider- theBeanContextServiceProviderassociated with the service
revokeService
void revokeService(Class serviceClass, 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
BeanContextServicesfires aBeanContextServiceRevokedEventto its list of currently registeredBeanContextServiceRevokedListenersandBeanContextServicesListeners. - Parameters:
serviceClass- the service to revoke from this BeanContextServicesserviceProvider- the BeanContextServiceProvider associated with this particular service that is being revokedrevokeCurrentServicesNow- a value oftrueindicates an exceptional circumstance where theBeanContextServiceProviderorBeanContextServiceswishes to immediately terminate service to all currently outstanding references to the specified service.
hasService
boolean hasService(Class serviceClass)
- Reports whether or not a given service is
currently available from this context.
- Parameters:
serviceClass- the service in question- Returns:
- true if the service is available
getService
Object getService(BeanContextChild child, Object requestor, Class serviceClass, Object serviceSelector, BeanContextServiceRevokedListener bcsrl) throws TooManyListenersException
- A
BeanContextChild, or any arbitrary object associated with aBeanContextChild, may obtain a reference to a currently registered service from its nestingBeanContextServicesvia invocation of this method. When invoked, this method gets the service by calling the getService() method on the underlyingBeanContextServiceProvider. - Parameters:
child- theBeanContextChildassociated with this requestrequestor- the object requesting the serviceserviceClass- class of the requested serviceserviceSelector- the service dependent parameterbcsrl- theBeanContextServiceRevokedListenerto notify if the service should later become revoked- Returns:
- a reference to this context's named
Service as requested or
null - Throws:
TooManyListenersException
releaseService
void releaseService(BeanContextChild child, Object requestor, Object service)
- Releases a
BeanContextChild's (or any arbitrary object associated with a BeanContextChild) reference to the specified service by calling releaseService() on the underlyingBeanContextServiceProvider. - Parameters:
child- theBeanContextChildrequestor- the requestorservice- the service
getCurrentServiceClasses
Iterator getCurrentServiceClasses()
- Gets the currently available services for this context.
- Returns:
- an
Iteratorconsisting of the currently available services
getCurrentServiceSelectors
Iterator getCurrentServiceSelectors(Class serviceClass)
- Gets the list of service dependent service parameters
(Service Selectors) for the specified service, by
calling getCurrentServiceSelectors() on the
underlying BeanContextServiceProvider.
- Parameters:
serviceClass- the specified service- Returns:
- the currently available service selectors for the named serviceClass
addBeanContextServicesListener
void addBeanContextServicesListener(BeanContextServicesListener bcsl)
- Adds a
BeanContextServicesListenerto this BeanContext - Parameters:
bcsl- theBeanContextServicesListenerto add
removeBeanContextServicesListener
void removeBeanContextServicesListener(BeanContextServicesListener bcsl)
- Removes a
BeanContextServicesListenerfrom thisBeanContext - Parameters:
bcsl- theBeanContextServicesListenerto remove from this context
Submit a bug or feature
For further API reference and developer documentation, see Java 2 SDK SE Developer Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 2004, 2010 Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.