|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
ObjectControlBeanContextChildSupport
ControlBeanContextSupport
ControlBeanContextServicesSupport
public class ControlBeanContextServicesSupport
Implementation of BeanContextServices for Beehive Controls. Assumes single threaded usage.
Field Summary |
---|
Fields inherited from interface BeanContext |
---|
globalHierarchyLock |
Fields inherited from interface DesignMode |
---|
PROPERTYNAME |
Constructor Summary | |
---|---|
ControlBeanContextServicesSupport()
Constructor. |
|
ControlBeanContextServicesSupport(BeanContextServices peer)
Constructor which allows delegate to be passed in. |
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. |
protected void |
initialize()
Initialize data structures. |
protected void |
releaseBeanContextResources()
Invoked when all resources obtained from the current nested bean context need to be released. |
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 class Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface BeanContext |
---|
addBeanContextMembershipListener, getResource, getResourceAsStream, instantiateChild, removeBeanContextMembershipListener |
Methods inherited from interface BeanContextChild |
---|
addPropertyChangeListener, addVetoableChangeListener, getBeanContext, removePropertyChangeListener, removeVetoableChangeListener, setBeanContext |
Methods inherited from interface Collection |
---|
add, addAll, clear, contains, containsAll, equals, hashCode, isEmpty, iterator, remove, removeAll, retainAll, size, toArray, toArray |
Methods inherited from interface DesignMode |
---|
isDesignTime, setDesignTime |
Methods inherited from interface Visibility |
---|
avoidingGui, dontUseGui, needsGui, okToUseGui |
Methods inherited from interface BeanContextServicesListener |
---|
serviceAvailable |
Methods inherited from interface BeanContextServiceRevokedListener |
---|
serviceRevoked |
Constructor Detail |
---|
public ControlBeanContextServicesSupport()
public ControlBeanContextServicesSupport(BeanContextServices peer)
peer
- BeanContextServices peer.Method Detail |
---|
public boolean addService(Class serviceClass, BeanContextServiceProvider serviceProvider)
BeanContextServiceProvider
s 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
.
addService
in interface BeanContextServices
serviceClass
- the service to addserviceProvider
- the BeanContextServiceProvider
associated with the service
public void revokeService(Class serviceClass, BeanContextServiceProvider serviceProvider, boolean revokeCurrentServicesNow)
BeanContextServices
fires a
BeanContextServiceRevokedEvent
to its
list of currently registered
BeanContextServiceRevokedListeners
and
BeanContextServicesListeners
.
revokeService
in interface BeanContextServices
serviceClass
- the service to revoke from this BeanContextServicesserviceProvider
- the BeanContextServiceProvider associated with
this particular service that is being revokedrevokeCurrentServicesNow
- 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.public boolean hasService(Class serviceClass)
hasService
in interface BeanContextServices
serviceClass
- the service in question
public Object getService(BeanContextChild child, Object requestor, Class serviceClass, Object serviceSelector, BeanContextServiceRevokedListener bcsrl) throws TooManyListenersException
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
.
getService
in interface BeanContextServices
child
- the BeanContextChild
associated with this requestrequestor
- the object requesting the serviceserviceClass
- class of the requested serviceserviceSelector
- the service dependent parameterbcsrl
- the
BeanContextServiceRevokedListener
to notify
if the service should later become revoked
null
TooManyListenersException
public void releaseService(BeanContextChild child, Object requestor, Object service)
BeanContextChild
's
(or any arbitrary object associated with a BeanContextChild)
reference to the specified service by calling releaseService()
on the underlying BeanContextServiceProvider
.
releaseService
in interface BeanContextServices
child
- the BeanContextChild
requestor
- the requestorservice
- the servicepublic Iterator getCurrentServiceClasses()
getCurrentServiceClasses
in interface BeanContextServices
Iterator
consisting of the
currently available servicespublic Iterator getCurrentServiceSelectors(Class serviceClass)
getCurrentServiceSelectors
in interface BeanContextServices
serviceClass
- the specified service
public void addBeanContextServicesListener(BeanContextServicesListener bcsl)
BeanContextServicesListener
to this BeanContext.
addBeanContextServicesListener
in interface BeanContextServices
bcsl
- the BeanContextServicesListener
to addpublic void removeBeanContextServicesListener(BeanContextServicesListener bcsl)
BeanContextServicesListener
from this BeanContext
.
removeBeanContextServicesListener
in interface BeanContextServices
bcsl
- the BeanContextServicesListener
to remove from this contextprotected void releaseBeanContextResources()
releaseBeanContextResources
in class ControlBeanContextChildSupport
protected void initialize()
initialize
in class ControlBeanContextSupport
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |