java.lang.Object java.beans.beancontext.BeanContextChildSupport java.beans.beancontext.BeanContextSupport java.beans.beancontext.BeanContextServicesSupport
This helper class provides a utility implementation of the java.beans.beancontext.BeanContextServices interface.
Since this class directly implements the BeanContextServices interface, the class can, and is intended to be used either by subclassing this implementation, or via delegation of an instance of this class from another through the BeanContextProxy interface.
Nested Class Summary | |
---|---|
protected class |
BeanContextServicesSupport.BCSSChild
|
protected class |
BeanContextServicesSupport.BCSSProxyServiceProvider
|
protected static class |
BeanContextServicesSupport.BCSSServiceProvider
subclasses may subclass this nested class to add behaviors for each BeanContextServicesProvider. |
Nested classes inherited from class java.beans.beancontext. BeanContextSupport |
---|
BeanContextSupport.BCSChild , BeanContextSupport.BCSIterator |
Field Summary | |
---|---|
protected ArrayList |
bcsListeners
List of BeanContextServicesListener objects. |
protected BeanContextServicesSupport.BCSSProxyServiceProvider |
proxy
Delegate for the BeanContextServiceProvider . |
protected int |
serializable
The number of instances of a serializable BeanContextServceProvider . |
protected HashMap |
services
all accesses to the protected transient HashMap services field should be synchronized on that object |
Fields inherited from class java.beans.beancontext. BeanContextSupport |
---|
bcmListeners , children , designTime , locale , okToUseGui |
Fields inherited from class java.beans.beancontext. BeanContextChildSupport |
---|
beanContext , beanContextChildPeer , pcSupport , rejectedSetBCOnce , vcSupport |
Fields inherited from interface java.beans.beancontext. BeanContext |
---|
globalHierarchyLock |
Fields inherited from interface java.beans. DesignMode |
---|
PROPERTYNAME |
Constructor Summary | |
---|---|
BeanContextServicesSupport
() Create an instance that is not a delegate of another object |
|
BeanContextServicesSupport
(
BeanContextServices
peer) Create an instance with a peer |
|
BeanContextServicesSupport
(
BeanContextServices
peer,
Locale
lcle) Create an instance using the specified locale |
|
BeanContextServicesSupport
(
BeanContextServices
peer,
Locale
lcle, boolean dtime) Create an instance using the specified Locale and design mode. |
|
BeanContextServicesSupport
(
BeanContextServices
peer,
Locale
lcle, boolean dTime, boolean visible) Construct a BeanContextServicesSupport instance |
Method Summary | |
---|---|
void |
addBeanContextServicesListener
(
BeanContextServicesListener
bcsl) add a BeanContextServicesListener |
boolean |
addService
(
Class
serviceClass,
BeanContextServiceProvider
bcsp) add a service |
protected boolean |
addService
(
Class
serviceClass,
BeanContextServiceProvider
bcsp, boolean fireEvent) add a service |
protected void |
bcsPreDeserializationHook
(
ObjectInputStream
ois) called from BeanContextSupport readObject before it deserializes the children ... |
protected void |
bcsPreSerializationHook
(
ObjectOutputStream
oos) called from BeanContextSupport writeObject before it serializes the children ... |
protected void |
childJustRemovedHook
(
Object
child,
BeanContextSupport.BCSChild
bcsc) called from superclass child removal operations after a child has been successfully removed. |
protected BeanContextSupport.BCSChild |
createBCSChild
(
Object
targetChild,
Object
peer) Subclasses can override this method to insert their own subclass of Child without having to override add() or the other Collection methods that add children to the set. |
protected BeanContextServicesSupport.BCSSServiceProvider |
createBCSSServiceProvider
(
Class
sc,
BeanContextServiceProvider
bcsp) subclasses can override this method to create new subclasses of BCSSServiceProvider without having to overrride addService() in order to instantiate. |
protected void |
fireServiceAdded
(
BeanContextServiceAvailableEvent
bcssae) Fires a BeanContextServiceAvailableEvent indicating that a new service has become available. |
protected void |
fireServiceAdded
(
Class
serviceClass) Fires a BeanContextServiceEvent notifying of a new service. |
protected void |
fireServiceRevoked
(
BeanContextServiceRevokedEvent
bcsre) Fires a BeanContextServiceEvent notifying of a service being revoked. |
protected void |
fireServiceRevoked
(
Class
serviceClass, boolean revokeNow) Fires a BeanContextServiceRevokedEvent indicating that a particular service is no longer available. |
BeanContextServices |
getBeanContextServicesPeer
() Gets the BeanContextServices associated with this BeanContextServicesSupport . |
protected static BeanContextServicesListener |
getChildBeanContextServicesListener
(
Object
child) Gets the BeanContextServicesListener (if any) of the specified child. |
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) obtain a service which may be delegated |
boolean |
hasService
(
Class
serviceClass) has a service, which may be delegated |
void |
initialize
() called by BeanContextSupport superclass during construction and deserialization to initialize subclass transient state. |
protected void |
initializeBeanContextResources
() called from setBeanContext to notify a BeanContextChild to allocate resources obtained from the nesting BeanContext. |
protected void |
releaseBeanContextResources
() called from setBeanContext to notify a BeanContextChild to release resources obtained from the nesting BeanContext. |
void |
releaseService
(
BeanContextChild
child,
Object
requestor,
Object
service) release a service |
void |
removeBeanContextServicesListener
(
BeanContextServicesListener
bcsl) remove a BeanContextServicesListener |
void |
revokeService
(
Class
serviceClass,
BeanContextServiceProvider
bcsp, boolean revokeCurrentServicesNow) remove a service |
void |
serviceAvailable
(
BeanContextServiceAvailableEvent
bcssae) BeanContextServicesListener callback, propagates event to all currently registered listeners and BeanContextServices children, if this BeanContextService does not already implement this service itself. |
void |
serviceRevoked
(
BeanContextServiceRevokedEvent
bcssre) BeanContextServicesListener callback, propagates event to all currently registered listeners and BeanContextServices children, if this BeanContextService does not already implement this service itself. |
Methods inherited from class java.beans.beancontext. BeanContextSupport |
---|
add , addAll , addBeanContextMembershipListener , avoidingGui , bcsChildren , childDeserializedHook , childJustAddedHook , classEquals , clear , contains , containsAll , containsKey , copyChildren , deserialize , dontUseGui , fireChildrenAdded , fireChildrenRemoved , getBeanContextPeer , getChildBeanContextChild , getChildBeanContextMembershipListener , getChildPropertyChangeListener , getChildSerializable , getChildVetoableChangeListener , getChildVisibility , getLocale , getResource , getResourceAsStream , instantiateChild , isDesignTime , isEmpty , isSerializing , iterator , needsGui , okToUseGui , propertyChange , readChildren , remove , remove , removeAll , removeBeanContextMembershipListener , retainAll , serialize , setDesignTime , setLocale , size , toArray , toArray , validatePendingAdd , validatePendingRemove , vetoableChange , writeChildren |
Methods inherited from class java.beans.beancontext. BeanContextChildSupport |
---|
addPropertyChangeListener , addVetoableChangeListener , firePropertyChange , fireVetoableChange , getBeanContext , getBeanContextChildPeer , isDelegated , removePropertyChangeListener , removeVetoableChangeListener , setBeanContext , validatePendingSetBeanContext |
Methods inherited from class java.lang. Object |
---|
clone , equals , finalize , getClass , hashCode , notify , notifyAll , toString , wait , wait , wait |
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
|
Methods inherited from interface java.beans. DesignMode |
---|
isDesignTime , setDesignTime |
Methods inherited from interface java.beans. Visibility |
---|
avoidingGui , dontUseGui , needsGui , okToUseGui |
Field Detail |
---|
protected transient HashMap services
protected transient int serializable
protected transient BeanContextServicesSupport.BCSSProxyServiceProvider proxy
protected transient ArrayList bcsListeners
Constructor Detail |
---|
public BeanContextServicesSupport(BeanContextServices peer, Locale lcle, boolean dTime, boolean visible)
Construct a BeanContextServicesSupport instance
public BeanContextServicesSupport(BeanContextServices peer, Locale lcle, boolean dtime)
public BeanContextServicesSupport(BeanContextServices peer, Locale lcle)
public BeanContextServicesSupport(BeanContextServices peer)
public BeanContextServicesSupport()
Method Detail |
---|
public void initialize()
public BeanContextServices getBeanContextServicesPeer()
protected BeanContextSupport.BCSChild createBCSChild(Object targetChild, Object peer)
Subclasses can override this method to insert their own subclass of Child without having to override add() or the other Collection methods that add children to the set.
protected BeanContextServicesSupport.BCSSServiceProvider createBCSSServiceProvider(Class sc, BeanContextServiceProvider bcsp)
public void addBeanContextServicesListener(BeanContextServicesListener bcsl)
public void removeBeanContextServicesListener(BeanContextServicesListener bcsl)
public boolean addService(Class serviceClass, BeanContextServiceProvider bcsp)
protected boolean addService(Class serviceClass, BeanContextServiceProvider bcsp, boolean fireEvent)
public void revokeService(Class serviceClass, BeanContextServiceProvider bcsp, boolean revokeCurrentServicesNow)
public boolean hasService(Class serviceClass)
public Object getService(BeanContextChild child, Object requestor, Class serviceClass, Object serviceSelector, BeanContextServiceRevokedListener bcsrl) throws TooManyListenersException
public void releaseService(BeanContextChild child, Object requestor, Object service)
public Iterator getCurrentServiceClasses()
public Iterator getCurrentServiceSelectors(Class serviceClass)
public void serviceAvailable(BeanContextServiceAvailableEvent bcssae)
public void serviceRevoked(BeanContextServiceRevokedEvent bcssre)
protected static final BeanContextServicesListener getChildBeanContextServicesListener(Object child)
protected void childJustRemovedHook(Object child, BeanContextSupport.BCSChild bcsc)
protected void releaseBeanContextResources()
protected void initializeBeanContextResources()
protected final void fireServiceAdded(Class serviceClass)
protected final void fireServiceAdded(BeanContextServiceAvailableEvent bcssae)
protected final void fireServiceRevoked(BeanContextServiceRevokedEvent bcsre)
protected final void fireServiceRevoked(Class serviceClass, boolean revokeNow)
protected void bcsPreSerializationHook(ObjectOutputStream oos) throws IOException
protected void bcsPreDeserializationHook(ObjectInputStream ois) throws IOException, ClassNotFoundException