# Class IndexedPropertyChangeEvent

java.lang.Object
java.util.EventObject
java.beans.PropertyChangeEvent
java.beans.IndexedPropertyChangeEvent

All Implemented Interfaces:
  `Serializable`

public class IndexedPropertyChangeEvent extends PropertyChangeEvent
An "IndexedPropertyChange" event gets delivered whenever a component that conforms to the JavaBeans specification (a "bean") changes a bound indexed property. This class is an extension of `PropertyChangeEvent` but contains the index of the property that has changed.

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.

Since:
  1.5
See Also:
  - Serialized Form

- ## Field Summary

  ### Fields declared in class EventObject

  `source`
  Modifier and Type
  Field
  Description
  `protected Object`
  `source`
  The object on which the Event initially occurred.

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `IndexedPropertyChangeEvent(Object source, String propertyName, Object oldValue, Object newValue, int index)`
  Constructs a new `IndexedPropertyChangeEvent` object.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `int`
  `getIndex()`
  Gets the index of the property that was changed.

  ### Methods declared in class PropertyChangeEvent

  `getNewValue, getOldValue, getPropagationId, getPropertyName, setPropagationId, toString`
  Modifier and Type
  Method
  Description
  `Object`
  `getNewValue()`
  Gets 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.
  `String`
  `toString()`
  Returns a string representation of the object.

  ### Methods declared in class EventObject

  `getSource`
  Modifier and Type
  Method
  Description
  `Object`
  `getSource()`
  The object on which the Event initially occurred.

  ### Methods declared in class Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`
  Modifier and Type
  Method
  Description
  `protected Object`
  `clone()`
  Creates and returns a copy of this object.
  `boolean`
  `equals(Object obj)`
  Indicates whether some other object is "equal to" this one.
  `protected void`
  `finalize()`
  Deprecated, for removal: This API element is subject to removal in a future version.
  Finalization is deprecated and subject to removal in a future release.
  `final Class<?>`
  `getClass()`
  Returns the runtime class of this `Object`.
  `int`
  `hashCode()`
  Returns a hash code value for this object.
  `final void`
  `notify()`
  Wakes up a single thread that is waiting on this object's monitor.
  `final void`
  `notifyAll()`
  Wakes up all threads that are waiting on this object's monitor.
  `final void`
  `wait()`
  Causes the current thread to wait until it is awakened, typically by being notified or interrupted.
  `final void`
  `wait(long timeoutMillis)`
  Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.
  `final void`
  `wait(long timeoutMillis, int nanos)`
  Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.

- ## Constructor Details

  - ### IndexedPropertyChangeEvent

    public IndexedPropertyChangeEvent(Object source, String propertyName, Object oldValue, Object newValue, int index)
    Constructs a new `IndexedPropertyChangeEvent` object.
    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.
      `index` - index of the property element that was changed.

- ## Method Details

  - ### getIndex

    public int getIndex()
    Gets the index of the property that was changed.
    Returns:
      The index specifying the property element that was changed.