Package org.apache.commons.configuration2.builder

## Class ConfigurationBuilderResultCreatedEvent

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

- All Implemented Interfaces:
    `Serializable`

      public class ConfigurationBuilderResultCreatedEvent
      extends ConfigurationBuilderEvent

  A specialized event class which is generated by a `ConfigurationBuilder` when a result configuration has been created.

  Events of this type are fired in the `getConfiguration()` method of a configuration builder each time a new result object is created. At the time the event is fired, no lock is held. The newly created `ImmutableConfiguration` object is available as a property of this event.

  A use case for this event is to perform special initializations on newly created configuration objects. It is also an indication that a builder is now fully initialized; i.e. the managed configuration is available.

  Since:
    2.0
  See Also:
    Serialized Form

- - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `static EventType<ConfigurationBuilderResultCreatedEvent>` | `RESULT_CREATED` | The specialized event type for a newly created result configuration.

    - ### Fields inherited from class org.apache.commons.configuration2.builder.ConfigurationBuilderEvent

      `ANY, CONFIGURATION_REQUEST, RESET`

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

      `source`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `ConfigurationBuilderResultCreatedEvent​(ConfigurationBuilder<?> source, EventType<? extends ConfigurationBuilderResultCreatedEvent> evType, ImmutableConfiguration createdConfiguration)` | Creates a new instance of `ConfigurationBuilderResultCreatedEvent` and initializes its properties.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `ImmutableConfiguration` | `getConfiguration()` | Gets the newly created `ImmutableConfiguration` object.

    - ### Methods inherited from class org.apache.commons.configuration2.builder.ConfigurationBuilderEvent

      `getSource`

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

    - #### RESULT_CREATED

          public static final EventType<ConfigurationBuilderResultCreatedEvent> RESULT_CREATED

      The specialized event type for a newly created result configuration. Events of this type are generated by a configuration builder when a result configuration has been created.

  - ### Constructor Detail

    - #### ConfigurationBuilderResultCreatedEvent

          public ConfigurationBuilderResultCreatedEvent​(ConfigurationBuilder<?> source,
                                                        EventType<? extends ConfigurationBuilderResultCreatedEvent> evType,
                                                        ImmutableConfiguration createdConfiguration)

      Creates a new instance of `ConfigurationBuilderResultCreatedEvent` and initializes its properties.
      Parameters:
        `source` - the `ConfigurationBuilder` object which triggered this event (must not be null)
        `evType` - the type of this event (must not be null)
        `createdConfiguration` - the newly created `ImmutableConfiguration` object (must not be null)
      Throws:
        `IllegalArgumentException` - if a required parameter is null

  - ### Method Detail

    - #### getConfiguration

          public ImmutableConfiguration getConfiguration()

      Gets the newly created `ImmutableConfiguration` object.
      Returns:
        the newly created `ImmutableConfiguration`