- All Known Subinterfaces:
BeanContext,BeanContextServices
- All Known Implementing Classes:
BeanContextChildSupport,BeanContextServicesSupport,BeanContextSupport
public interface BeanContextChild
JavaBeans wishing to be nested within, and obtain a reference to their execution environment, or context, as defined by the BeanContext sub-interface shall implement this interface.
Conformant BeanContexts shall as a side effect of adding a BeanContextChild object shall pass a reference to itself via the setBeanContext() method of this interface.
Note that a BeanContextChild may refuse a change in state by throwing PropertyVetoedException in response.
In order for persistence mechanisms to function properly on BeanContextChild instances across a broad variety of scenarios, implementing classes of this interface are required to define as transient, any or all fields, or instance variables, that may contain, or represent, references to the nesting BeanContext instance or other resources obtained from the BeanContext via any unspecified mechanisms.
- Since:
- 1.2
- See Also:
BeanContext,PropertyChangeEvent,PropertyChangeListener,PropertyVetoException,VetoableChangeListener
-
Method Summary
Modifier and Type Method Description voidaddPropertyChangeListener(String name, PropertyChangeListener pcl)Adds aPropertyChangeListenerto thisBeanContextChildin order to receive aPropertyChangeEventwhenever the specified property has changed.voidaddVetoableChangeListener(String name, VetoableChangeListener vcl)Adds aVetoableChangeListenerto thisBeanContextChildto receive events whenever the specified property changes.BeanContextgetBeanContext()Gets theBeanContextassociated with thisBeanContextChild.voidremovePropertyChangeListener(String name, PropertyChangeListener pcl)Removes aPropertyChangeListenerfrom thisBeanContextChildso that it no longer receivesPropertyChangeEventswhen the specified property is changed.voidremoveVetoableChangeListener(String name, VetoableChangeListener vcl)Removes aVetoableChangeListenerfrom thisBeanContextChildso that it no longer receives events when the specified property changes.voidsetBeanContext(BeanContext bc)Objects that implement this interface, shall fire a java.beans.PropertyChangeEvent, with parameters: propertyName "beanContext", oldValue (the previous nestingBeanContextinstance, ornull), newValue (the current nestingBeanContextinstance, ornull).
-
Method Details
-
setBeanContext
Objects that implement this interface, shall fire a java.beans.PropertyChangeEvent, with parameters: propertyName "beanContext", oldValue (the previous nesting
BeanContextinstance, ornull), newValue (the current nestingBeanContextinstance, ornull).A change in the value of the nesting BeanContext property of this BeanContextChild may be vetoed by throwing the appropriate exception.
- Parameters:
bc- TheBeanContextwith which to associate thisBeanContextChild.- Throws:
PropertyVetoException- if the addition of the specifiedBeanContextis refused.
-
getBeanContext
BeanContext getBeanContext()Gets theBeanContextassociated with thisBeanContextChild.- Returns:
- the
BeanContextassociated with thisBeanContextChild.
-
addPropertyChangeListener
Adds aPropertyChangeListenerto thisBeanContextChildin order to receive aPropertyChangeEventwhenever the specified property has changed.- Parameters:
name- the name of the property to listen onpcl- thePropertyChangeListenerto add
-
removePropertyChangeListener
Removes aPropertyChangeListenerfrom thisBeanContextChildso that it no longer receivesPropertyChangeEventswhen the specified property is changed.- Parameters:
name- the name of the property that was listened onpcl- thePropertyChangeListenerto remove
-
addVetoableChangeListener
Adds aVetoableChangeListenerto thisBeanContextChildto receive events whenever the specified property changes.- Parameters:
name- the name of the property to listen onvcl- theVetoableChangeListenerto add
-
removeVetoableChangeListener
Removes aVetoableChangeListenerfrom thisBeanContextChildso that it no longer receives events when the specified property changes.- Parameters:
name- the name of the property that was listened on.vcl- theVetoableChangeListenerto remove.
-