Package org.apache.commons.configuration2.builder

# Class ConfigurationBuilderEvent

java.lang.Object
java.util.EventObject
org.apache.commons.configuration2.event.Event
org.apache.commons.configuration2.builder.ConfigurationBuilderEvent

All Implemented Interfaces:
  `Serializable`

Direct Known Subclasses:
  `ConfigurationBuilderResultCreatedEvent`

public class ConfigurationBuilderEvent extends Event

A base event class for events generated by a `ConfigurationBuilder`.

Configuration builders can trigger a number of different events. All these events are derived from this class. This event base class does not define any additional properties. However, it defines that the event source must be a `ConfigurationBuilder`.

Since:
  2.0
See Also:
  - Serialized Form

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static final EventType<ConfigurationBuilderEvent>`
  `ANY`
  The common super type for all events related to configuration builders.
  `static final EventType<ConfigurationBuilderEvent>`
  `CONFIGURATION_REQUEST`
  The specific event type for configuration request events.
  `static final EventType<ConfigurationBuilderEvent>`
  `RESET`
  The specific event type for builder reset events.

  ### Fields inherited from class java.util.EventObject

  `source`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `ConfigurationBuilderEvent(ConfigurationBuilder<?> source, EventType<? extends ConfigurationBuilderEvent> evType)`
  Creates a new instance of `ConfigurationBuilderEvent` and sets basic properties.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `ConfigurationBuilder<?>`
  `getSource()`
  Gets the source of this event as a `ConfigurationBuilder`.

  ### Methods inherited from class org.apache.commons.configuration2.event.Event

  `appendPropertyRepresentation, getEventType, toString`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- ## Field Details

  - ### ANY

    public static final EventType<ConfigurationBuilderEvent> ANY
    The common super type for all events related to configuration builders.

  - ### RESET

    public static final EventType<ConfigurationBuilderEvent> RESET
    The specific event type for builder reset events. Events of this type are generated each time the builder's `resetResult()` method is called.

  - ### CONFIGURATION_REQUEST

    public static final EventType<ConfigurationBuilderEvent> CONFIGURATION_REQUEST
    The specific event type for configuration request events. Events of this type are generated each time the builder's `getConfiguration()` method is called (before the managed configuration is actually accessed and the lock is acquired). This gives listeners the opportunity to perform some checks which may invalidate the configuration, for example trigger a reload check. Note: A listener must not call the builder's `getConfiguration()` method - this will cause an infinite loop!
    See Also:
      - `ConfigurationBuilder.getConfiguration()`

- ## Constructor Details

  - ### ConfigurationBuilderEvent

    public ConfigurationBuilderEvent(ConfigurationBuilder<?> source, EventType<? extends ConfigurationBuilderEvent> evType)
    Creates a new instance of `ConfigurationBuilderEvent` and sets basic properties.
    Parameters:
      `source` - the `ConfigurationBuilder` object which triggered this event (must not be null)
      `evType` - the type of this event (must not be null)
    Throws:
      `IllegalArgumentException` - if a required parameter is null

- ## Method Details

  - ### getSource

    public ConfigurationBuilder<?> getSource()
    Gets the source of this event as a `ConfigurationBuilder`.
    Overrides:
      `getSource` in class `EventObject`
    Returns:
      the `ConfigurationBuilder` which generated this event