org.apache.commons.configuration.event

Class ConfigurationEvent

public class ConfigurationEvent extends EventObject

An event class for reporting updates on a configuration object.

Event objects of this type are used for "raw" events, i.e. unfiltered modifications of any kind. A level with semantically higher events (e.g. for property changes) may be built on top of this fundamental event mechanism.

Each event can contain the following data:

The following standard events are generated by typical configuration implementations (the constants for the event types are defined in AbstractConfiguration):

EVENT_ADD_PROPERTY
This event is triggered for each call of the addProperty() method of a configuration object. It contains the name of the property, to which new data is added, and the value object that is added to this property (this may be an array or a list if multiple values are added).
EVENT_SET_PROPERTY
Calling the setProperty() method triggers this event. The event object stores the name of the affected property and its new value.
EVENT_CLEAR_PROPERTY
If a property is removed from a configuration (by calling the clearProperty() method), an event of this type is fired. In this case the event object only stores the name of the removed property, the value is null.
EVENT_CLEAR
This event is fired when the whole configuration is cleared. The corresponding event object contains no additional data.

Since: 1.3

Version: $Id: ConfigurationEvent.java 443105 2006-09-13 20:04:01Z oheger $

Author: Commons Configuration team

Field Summary
booleanbeforeUpdate
Stores the before update flag.
StringpropertyName
Stores the property name.
ObjectpropertyValue
Stores the property value.
static longserialVersionUID
The serial version UID.
inttype
Stores the event type.
Constructor Summary
ConfigurationEvent(Object source, int type, String propertyName, Object propertyValue, boolean beforeUpdate)
Creates a new instance of ConfigurationEvent and initializes it.
Method Summary
StringgetPropertyName()
Returns the name of the affected property.
ObjectgetPropertyValue()
Returns the value of the affected property if available.
intgetType()
Returns the type of this event.
booleanisBeforeUpdate()
Returns a flag if this event was generated before or after an update.

Field Detail

beforeUpdate

private boolean beforeUpdate
Stores the before update flag.

propertyName

private String propertyName
Stores the property name.

propertyValue

private Object propertyValue
Stores the property value.

serialVersionUID

private static final long serialVersionUID
The serial version UID.

type

private int type
Stores the event type.

Constructor Detail

ConfigurationEvent

public ConfigurationEvent(Object source, int type, String propertyName, Object propertyValue, boolean beforeUpdate)
Creates a new instance of ConfigurationEvent and initializes it.

Parameters: source the event source type the event's type propertyName the name of the affected property propertyValue the value of the affected property beforeUpdate the before update flag

Method Detail

getPropertyName

public String getPropertyName()
Returns the name of the affected property. This can be null if no property change has lead to this event.

Returns: the name of the property

getPropertyValue

public Object getPropertyValue()
Returns the value of the affected property if available.

Returns: the value of the property; can be null

getType

public int getType()
Returns the type of this event. This describes the update process that caused this event.

Returns: the event's type

isBeforeUpdate

public boolean isBeforeUpdate()
Returns a flag if this event was generated before or after an update.

Returns: true if this event was generated before an update; false otherwise