|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcom.jgoodies.binding.beans.IndirectPropertyChangeSupport
public final class IndirectPropertyChangeSupport
A helper class for observing changes in bound bean properties
where the target bean changes.
Provides two access styles to the target bean that holds the observed
property: you can specify a bean directly,
or you can use a bean channel to access the bean indirectly.
In the latter case you specify a ValueModel
that holds the bean that in turn holds the observed properties.
If the target bean is null
, it won't report any changes.
It is recommended to remove all listener by invoking #removeAll
if the observed bean lives much longer than this change support instance.
As an alternative you may use event listener lists that are based
on WeakReference
s.
Constraints: All target bean classes must support bound properties, i. e. must provide the following pair of methods for registration of multicast property change event listeners:
public void addPropertyChangeListener(PropertyChangeListener x); public void removePropertyChangeListener(PropertyChangeListener x);and the following methods for listening on named properties:
public void addPropertyChangeListener(String, PropertyChangeListener x); public void removePropertyChangeListener(String, PropertyChangeListener x);
PropertyChangeEvent
,
PropertyChangeListener
,
PropertyChangeSupport
,
BeanAdapter
Constructor Summary | |
---|---|
IndirectPropertyChangeSupport()
Constructs an IndirectPropertyChangeSupport that has no bean set. |
|
IndirectPropertyChangeSupport(Object bean)
Constructs an IndirectPropertyChangeSupport with the given initial bean. |
|
IndirectPropertyChangeSupport(ValueModel beanChannel)
Constructs an IndirectPropertyChangeSupport using the given bean channel. |
Method Summary | |
---|---|
void |
addPropertyChangeListener(PropertyChangeListener listener)
Adds a PropertyChangeListener to the list of bean listeners. |
void |
addPropertyChangeListener(String propertyName,
PropertyChangeListener listener)
Adds a PropertyChangeListener to the list of bean listeners for a specific property. |
Object |
getBean()
Returns the Java Bean that holds the observed properties. |
PropertyChangeListener[] |
getPropertyChangeListeners()
Returns an array of all the property change listeners registered on this component. |
PropertyChangeListener[] |
getPropertyChangeListeners(String propertyName)
Returns an array of all the listeners which have been associated with the named property. |
void |
removeAll()
Removes all registered PropertyChangeListeners from the current target bean - if any. |
void |
removePropertyChangeListener(PropertyChangeListener listener)
Removes a PropertyChangeListener from the list of bean listeners. |
void |
removePropertyChangeListener(String propertyName,
PropertyChangeListener listener)
Removes a PropertyChangeListener from the listener list for a specific property. |
void |
setBean(Object newBean)
Sets a new Java Bean as holder of the observed properties. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public IndirectPropertyChangeSupport()
public IndirectPropertyChangeSupport(Object bean)
bean
- the initial beanpublic IndirectPropertyChangeSupport(ValueModel beanChannel)
beanChannel
- the ValueModel that holds the beanMethod Detail |
---|
public Object getBean()
setBean(Object)
public void setBean(Object newBean)
newBean
- the new holder of the observed propertiesgetBean()
public void addPropertyChangeListener(PropertyChangeListener listener)
If listener is null
, no exception is thrown and no action is performed.
listener
- the PropertyChangeListener to be addedremovePropertyChangeListener(PropertyChangeListener)
,
removePropertyChangeListener(String, PropertyChangeListener)
,
addPropertyChangeListener(String, PropertyChangeListener)
,
getPropertyChangeListeners()
public void removePropertyChangeListener(PropertyChangeListener listener)
If listener is null
, no exception is thrown and no action is performed.
listener
- the PropertyChangeListener to be removedaddPropertyChangeListener(PropertyChangeListener)
,
addPropertyChangeListener(String, PropertyChangeListener)
,
removePropertyChangeListener(String, PropertyChangeListener)
,
getPropertyChangeListeners()
public void addPropertyChangeListener(String propertyName, PropertyChangeListener listener)
Note that if the bean is inheriting a bound property, then no event will be fired in response to a change in the inherited property.
If listener is null
, no exception is thrown and no action is performed.
propertyName
- one of the property names listed abovelistener
- the PropertyChangeListener to be addedremovePropertyChangeListener(String, PropertyChangeListener)
,
addPropertyChangeListener(String, PropertyChangeListener)
,
getPropertyChangeListeners(String)
public void removePropertyChangeListener(String propertyName, PropertyChangeListener listener)
If listener is null
, no exception is thrown and no action is performed.
propertyName
- a valid property namelistener
- the PropertyChangeListener to be removedaddPropertyChangeListener(String, PropertyChangeListener)
,
removePropertyChangeListener(PropertyChangeListener)
,
getPropertyChangeListeners(String)
public PropertyChangeListener[] getPropertyChangeListeners()
PropertyChangeListener
s
or an empty array if no property change
listeners are currently registeredaddPropertyChangeListener(PropertyChangeListener)
,
removePropertyChangeListener(PropertyChangeListener)
,
getPropertyChangeListeners(String)
,
PropertyChangeSupport.getPropertyChangeListeners()
public PropertyChangeListener[] getPropertyChangeListeners(String propertyName)
propertyName
- the name of the property to lookup listeners
PropertyChangeListeners
associated with
the named property or an empty array if no listeners have
been addedaddPropertyChangeListener(String, PropertyChangeListener)
,
removePropertyChangeListener(String, PropertyChangeListener)
,
getPropertyChangeListeners()
public void removeAll()
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |