|
||||||||||
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
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 |