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 EventType<ConfigurationBuilderEvent>` | `ANY` | The common super type for all events related to configuration builders.
    `static EventType<ConfigurationBuilderEvent>` | `CONFIGURATION_REQUEST` | The specific event type for configuration request events.
    `static 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

    All Methods Instance Methods Concrete Methods
    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 Detail

    - #### 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, e.g. 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 Detail

    - #### 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 Detail

    - #### 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