JavaTM 2 Platform
Standard Ed. 5.0

java.beans
Class PropertyChangeEvent

java.lang.Object
  extended by java.util.EventObject
      extended by java.beans.PropertyChangeEvent
All Implemented Interfaces:
Serializable
Direct Known Subclasses:
IndexedPropertyChangeEvent

public class PropertyChangeEvent
extends EventObject

A "PropertyChange" event gets delivered whenever a bean changes a "bound" or "constrained" property. A PropertyChangeEvent object is sent as an argument to the PropertyChangeListener and VetoableChangeListener methods.

Normally PropertyChangeEvents are accompanied by the name and the old and new value of the changed property. If the new value is a primitive type (such as int or boolean) it must be wrapped as the corresponding java.lang.* Object type (such as Integer or Boolean).

Null values may be provided for the old and the new values if their true values are not known.

An event source may send a null object as the name to indicate that an arbitrary set of if its properties have changed. In this case the old and new values should also be null.

See Also:
Serialized Form

Field Summary
 
Fields inherited from class java.util.EventObject
source
 
Constructor Summary
PropertyChangeEvent(Object source, String propertyName, Object oldValue, Object newValue)
          Constructs a new PropertyChangeEvent.
 
Method Summary
 Object getNewValue()
          Sets the new value for the property, expressed as an Object.
 Object getOldValue()
          Gets the old value for the property, expressed as an Object.
 Object getPropagationId()
          The "propagationId" field is reserved for future use.
 String getPropertyName()
          Gets the programmatic name of the property that was changed.
 void setPropagationId(Object propagationId)
          Sets the propagationId object for the event.
 
Methods inherited from class java.util.EventObject
getSource, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

PropertyChangeEvent

public PropertyChangeEvent(Object source,
                           String propertyName,
                           Object oldValue,
                           Object newValue)
Constructs a new PropertyChangeEvent.

Parameters:
source - The bean that fired the event.
propertyName - The programmatic name of the property that was changed.
oldValue - The old value of the property.
newValue - The new value of the property.
Method Detail

getPropertyName

public String getPropertyName()
Gets the programmatic name of the property that was changed.

Returns:
The programmatic name of the property that was changed. May be null if multiple properties have changed.

getNewValue

public Object getNewValue()
Sets the new value for the property, expressed as an Object.

Returns:
The new value for the property, expressed as an Object. May be null if multiple properties have changed.

getOldValue

public Object getOldValue()
Gets the old value for the property, expressed as an Object.

Returns:
The old value for the property, expressed as an Object. May be null if multiple properties have changed.

setPropagationId

public void setPropagationId(Object propagationId)
Sets the propagationId object for the event.

Parameters:
propagationId - The propagationId object for the event.

getPropagationId

public Object getPropagationId()
The "propagationId" field is reserved for future use. In Beans 1.0 the sole requirement is that if a listener catches a PropertyChangeEvent and then fires a PropertyChangeEvent of its own, then it should make sure that it propagates the propagationId field from its incoming event to its outgoing event.

Returns:
the propagationId object associated with a bound/constrained property update.

JavaTM 2 Platform
Standard Ed. 5.0

Submit a bug or feature
For further API reference and developer documentation, see Java 2 SDK SE Developer Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.

Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.