net.i2p.i2ptunnel.irc

## Class EventReceiver

- java.lang.Object
- - net.i2p.i2ptunnel.irc.EventReceiver

- All Implemented Interfaces:
    EventDispatcher
  Direct Known Subclasses:
    DCCClientManager

      public abstract class EventReceiver
      extends Object
      implements EventDispatcher

  An implementation of the EventDispatcher interface for receiving events via in-line notifyEvent() only. Does not support chaining to additional dispatchers. Does not support waitEventValue(). Does not support ignoring.

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `EventReceiver()`

  - ### Method Summary

    All Methods Instance Methods Abstract Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `attachEventDispatcher(EventDispatcher ev)` Attach an EventDispatcher object to the events dispatching chain.
    `void` | `detachEventDispatcher(EventDispatcher ev)` Detach the specified EventDispatcher object from the events dispatching chain.
    `EventDispatcher` | `getEventDispatcher()` Get an object to be used to deliver events (usually `this`, but YMMV).
    `Set<String>` | `getEvents()` Retrieve the names of all the events that have been received
    `Object` | `getEventValue(String name)` Retrieve the value currently associated with the specified event value
    `void` | `ignoreEvents()` Ignore further event notifications
    `abstract void` | `notifyEvent(String eventName, Object args)` Deliver an event
    `void` | `unIgnoreEvents()` Almost like the method above :-)
    `Object` | `waitEventValue(String name)` Wait until the given event has received a value

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

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

- - ### Constructor Detail

    - #### EventReceiver

          public EventReceiver()

  - ### Method Detail

    - #### attachEventDispatcher

          public void attachEventDispatcher(EventDispatcher ev)

      Description copied from interface: `EventDispatcher`
      Attach an EventDispatcher object to the events dispatching chain. Note that notification is not bidirectional (i.e. events notified to `ev` won't reach the object calling this method). Good luck, and beware of notification loops! :-)
      Specified by:
        `attachEventDispatcher` in interface `EventDispatcher`
      Parameters:
        `ev` - Event object to be attached
      Throws:
        `UnsupportedOperationException` - always

    - #### detachEventDispatcher

          public void detachEventDispatcher(EventDispatcher ev)

      Description copied from interface: `EventDispatcher`
      Detach the specified EventDispatcher object from the events dispatching chain.
      Specified by:
        `detachEventDispatcher` in interface `EventDispatcher`
      Parameters:
        `ev` - Event object to be detached
      Throws:
        `UnsupportedOperationException` - always

    - #### getEventDispatcher

          public EventDispatcher getEventDispatcher()

      Description copied from interface: `EventDispatcher`
      Get an object to be used to deliver events (usually `this`, but YMMV).
      Specified by:
        `getEventDispatcher` in interface `EventDispatcher`

    - #### getEvents

          public Set<String> getEvents()

      Description copied from interface: `EventDispatcher`
      Retrieve the names of all the events that have been received
      Specified by:
        `getEvents` in interface `EventDispatcher`
      Returns:
        A set of event names
      Throws:
        `UnsupportedOperationException` - always

    - #### getEventValue

          public Object getEventValue(String name)

      Description copied from interface: `EventDispatcher`
      Retrieve the value currently associated with the specified event value
      Specified by:
        `getEventValue` in interface `EventDispatcher`
      Parameters:
        `name` - name of the event to query for
      Returns:
        value (or null if none are available)
      Throws:
        `UnsupportedOperationException` - always

    - #### ignoreEvents

          public void ignoreEvents()

      Description copied from interface: `EventDispatcher`
      Ignore further event notifications
      Specified by:
        `ignoreEvents` in interface `EventDispatcher`
      Throws:
        `UnsupportedOperationException` - always

    - #### notifyEvent

          public abstract void notifyEvent(String eventName,
                                           Object args)

      Description copied from interface: `EventDispatcher`
      Deliver an event
      Specified by:
        `notifyEvent` in interface `EventDispatcher`
      Parameters:
        `eventName` - name of the event
        `args` - data being stored for that event

    - #### unIgnoreEvents

          public void unIgnoreEvents()

      Description copied from interface: `EventDispatcher`
      Almost like the method above :-)
      Specified by:
        `unIgnoreEvents` in interface `EventDispatcher`

    - #### waitEventValue

          public Object waitEventValue(String name)

      Description copied from interface: `EventDispatcher`
      Wait until the given event has received a value
      Specified by:
        `waitEventValue` in interface `EventDispatcher`
      Parameters:
        `name` - name of the event to wait for
      Returns:
        value specified for that event
      Throws:
        `UnsupportedOperationException` - always