org.robokind.api.common.property
Class PropertyChangeNotifier

java.lang.Object
  extended by org.robokind.api.common.property.PropertyChangeNotifier
All Implemented Interfaces:
PropertyChangeSource
Direct Known Subclasses:
AbstractLifecycleProvider, OSGiComponent, ServiceClassListener, ServiceDependenciesTracker, SingleServiceListener, VersionProperty

public class PropertyChangeNotifier
extends Object
implements PropertyChangeSource

An implementation of PropertyChangeSource with helper methods for firing events. This class uses the PropertyChangeSupportClass. This can serve as a base class for classes which fire property change events.

Author:
Stu Baurmann, Matthew Stevenson

Constructor Summary
PropertyChangeNotifier()
          Creates a new PropertyChangeNotifier with a new PropertyChangeSupport.
PropertyChangeNotifier(Object sourceBean)
          Creates a new PropertyChangeNotifier with a new PropertyChangeSupport made from sourceBean.
PropertyChangeNotifier(PropertyChangeSupport support)
          Creates a PropertyChangeNotifier with the given PropertyChangeSupport.
 
Method Summary
 void addPropertyChangeListener(PropertyChangeListener listener)
          Add a PropertyChangeListener to the PropertyChangeSupport.
 void addPropertyChangeListener(String propertyName, PropertyChangeListener listener)
          Add a PropertyChangeListener to the PropertyChangeSupport for a specific event.
protected  void clearAllListeners()
          Removes all PropertyChangeListeners.
protected  void clearListeners(String propertyName)
          Removes all PropertyChangeListeners associated with the given property name.
protected  void fireIndexedPropertyChange(String propertyName, int index, boolean oldValue, boolean newValue)
          Fire a property change event for a property with an index.
protected  void fireIndexedPropertyChange(String propertyName, int index, int oldValue, int newValue)
          Fire a property change event for a property with an index.
protected  void fireIndexedPropertyChange(String propertyName, int index, Object oldValue, Object newValue)
          Fire a property change event for a property with an index.
protected  void firePropertyChange(PropertyChangeEvent evt)
          Fire a property change event using an existing PropertyChangeEvent.
protected  void firePropertyChange(String propertyName, boolean oldValue, boolean newValue)
          Fire a property change event.
protected  void firePropertyChange(String propertyName, int oldValue, int newValue)
          Fire a property change event.
protected  void firePropertyChange(String propertyName, Object oldValue, Object newValue)
          Fire a property change event.
protected  PropertyChangeListener[] getPropertyChangeListeners()
           
protected  PropertyChangeListener[] getPropertyChangeListeners(String propertyName)
           
protected  boolean hasListeners(String propertyName)
           
 void removePropertyChangeListener(PropertyChangeListener listener)
          Removes a PropertyChangeListener from the PropertyChangeSupport.
 void removePropertyChangeListener(String propertyName, PropertyChangeListener listener)
          Removes a PropertyChangeListener from the PropertyChangeSupport from listening to a specific event.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PropertyChangeNotifier

public PropertyChangeNotifier(PropertyChangeSupport support)
Creates a PropertyChangeNotifier with the given PropertyChangeSupport.

Parameters:
support -

PropertyChangeNotifier

public PropertyChangeNotifier(Object sourceBean)
Creates a new PropertyChangeNotifier with a new PropertyChangeSupport made from sourceBean.

Parameters:
sourceBean - the source for the PropertyChangeSupport.

PropertyChangeNotifier

public PropertyChangeNotifier()
Creates a new PropertyChangeNotifier with a new PropertyChangeSupport.

Method Detail

addPropertyChangeListener

public void addPropertyChangeListener(PropertyChangeListener listener)
Add a PropertyChangeListener to the PropertyChangeSupport.

Specified by:
addPropertyChangeListener in interface PropertyChangeSource
Parameters:
listener - PropertyChangeListener to add.

removePropertyChangeListener

public void removePropertyChangeListener(PropertyChangeListener listener)
Removes a PropertyChangeListener from the PropertyChangeSupport.

Specified by:
removePropertyChangeListener in interface PropertyChangeSource
Parameters:
listener - PropertyChangeListener to remove

addPropertyChangeListener

public void addPropertyChangeListener(String propertyName,
                                      PropertyChangeListener listener)
Add a PropertyChangeListener to the PropertyChangeSupport for a specific event.

Specified by:
addPropertyChangeListener in interface PropertyChangeSource
Parameters:
propertyName - name of the event to listen for
listener - PropertyChangeListener to add

removePropertyChangeListener

public void removePropertyChangeListener(String propertyName,
                                         PropertyChangeListener listener)
Removes a PropertyChangeListener from the PropertyChangeSupport from listening to a specific event.

Specified by:
removePropertyChangeListener in interface PropertyChangeSource
Parameters:
propertyName - name of the event
listener - PropertyChangeListener to remove

firePropertyChange

protected void firePropertyChange(String propertyName,
                                  Object oldValue,
                                  Object newValue)
Fire a property change event.

Parameters:
propertyName - name of the property being changed
oldValue - old property value
newValue - new property value

firePropertyChange

protected void firePropertyChange(String propertyName,
                                  int oldValue,
                                  int newValue)
Fire a property change event.

Parameters:
propertyName - name of the property being changed
oldValue - old property value
newValue - new property value

firePropertyChange

protected void firePropertyChange(String propertyName,
                                  boolean oldValue,
                                  boolean newValue)
Fire a property change event.

Parameters:
propertyName - name of the property being changed
oldValue - old property value
newValue - new property value

firePropertyChange

protected void firePropertyChange(PropertyChangeEvent evt)
Fire a property change event using an existing PropertyChangeEvent.

Parameters:
evt - PropertyChangeEvent to fire

fireIndexedPropertyChange

protected void fireIndexedPropertyChange(String propertyName,
                                         int index,
                                         Object oldValue,
                                         Object newValue)
Fire a property change event for a property with an index.

Parameters:
propertyName - name of the property being changed
index - property index
oldValue - old property value
newValue - new property value

fireIndexedPropertyChange

protected void fireIndexedPropertyChange(String propertyName,
                                         int index,
                                         int oldValue,
                                         int newValue)
Fire a property change event for a property with an index.

Parameters:
propertyName - name of the property being changed
index - property index
oldValue - old property value
newValue - new property value

fireIndexedPropertyChange

protected void fireIndexedPropertyChange(String propertyName,
                                         int index,
                                         boolean oldValue,
                                         boolean newValue)
Fire a property change event for a property with an index.

Parameters:
propertyName - name of the property being changed
index - property index
oldValue - old property value
newValue - new property value

getPropertyChangeListeners

protected PropertyChangeListener[] getPropertyChangeListeners()

getPropertyChangeListeners

protected PropertyChangeListener[] getPropertyChangeListeners(String propertyName)

hasListeners

protected boolean hasListeners(String propertyName)

clearAllListeners

protected void clearAllListeners()
Removes all PropertyChangeListeners.


clearListeners

protected void clearListeners(String propertyName)
Removes all PropertyChangeListeners associated with the given property name. If propertyName is null, no listeners are removed. Listeners are completely removed, not just removed for the property.

Parameters:
propertyName - remove listeners for this property


Copyright © 2011-2013. All Rights Reserved.