org.apache.ivy.core.event

## Class IvyEvent

- java.lang.Object
- - org.apache.ivy.core.event.IvyEvent

- Direct Known Subclasses:
    DownloadEvent, PrepareDownloadEvent, PublishEvent, ResolveDependencyEvent, ResolveEvent, RetrieveArtifactEvent, RetrieveEvent, TransferEvent

      public class IvyEvent
      extends java.lang.Object

  The root of all ivy events Any ivy event knows which ivy instance triggered the event (the source) and also has a name and a map of attributes. The name of the event represents the event type, usually there is a one - one mapping between event names and IvyEvent subclass, even if this is not mandatory. Example: pre-resolve pre-resolve-dependency post-download The map of attributes is a Map from String keys to String values. It is especially useful to filter events, and to get some of their essential data in some context where access to Java types is not easy (in an ant build file, for example), Example: pre-resolve (organisation=foo, module=bar, revision=1.0, conf=default) post-download (organisation=foo, module=bar, revision=1.0, artifact=foo-test, type=jar, ext=jar)

- - ### Constructor Summary

    Constructors
    Modifier | Constructor and Description
    --- | ---
    `protected` | `IvyEvent(java.lang.String name)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected void` | `addAttribute(java.lang.String key, java.lang.String value)` Should only be called during event object construction, since events should be immutable
    `protected void` | `addAttributes(java.util.Map attributes)`
    `protected void` | `addConfsAttribute(java.lang.String[] confs)`
    `protected void` | `addMDAttributes(ModuleDescriptor md)`
    `protected void` | `addModuleIdAttributes(ModuleId moduleId)`
    `protected void` | `addMridAttributes(ModuleRevisionId mrid)`
    `boolean` | `equals(java.lang.Object obj)`
    `java.util.Map` | `getAttributes()` Returns the attributes of this event, as a Map(String->String)
    `java.lang.String` | `getName()`
    `EventManager` | `getSource()`
    `int` | `hashCode()`
    `java.lang.String` | `toString()`

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

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

- - ### Constructor Detail

    - #### IvyEvent

          protected IvyEvent(java.lang.String name)

  - ### Method Detail

    - #### addAttribute

          protected void addAttribute(java.lang.String key,
                          java.lang.String value)

      Should only be called during event object construction, since events should be immutable
      Parameters:
        `key` -
        `value` -

    - #### addMDAttributes

          protected void addMDAttributes(ModuleDescriptor md)

    - #### addMridAttributes

          protected void addMridAttributes(ModuleRevisionId mrid)

    - #### addModuleIdAttributes

          protected void addModuleIdAttributes(ModuleId moduleId)

    - #### addConfsAttribute

          protected void addConfsAttribute(java.lang.String[] confs)

    - #### addAttributes

          protected void addAttributes(java.util.Map attributes)

    - #### getSource

          public EventManager getSource()

    - #### getName

          public java.lang.String getName()

    - #### getAttributes

          public java.util.Map getAttributes()

      Returns the attributes of this event, as a Map(String->String)
      Returns:
        the attributes of this event, as a Map(String->String)

    - #### toString

          public java.lang.String toString()

      Overrides:
        `toString` in class `java.lang.Object`

    - #### equals

          public boolean equals(java.lang.Object obj)

      Overrides:
        `equals` in class `java.lang.Object`

    - #### hashCode

          public int hashCode()

      Overrides:
        `hashCode` in class `java.lang.Object`