com.google.web.bindery.event.shared

## Class SimpleEventBus

- java.lang.Object
- - com.google.web.bindery.event.shared.EventBus
  - - com.google.web.bindery.event.shared.SimpleEventBus

-     public class SimpleEventBus
      extends EventBus

  Basic implementation of `EventBus`.

- - ### Constructor Summary

    Constructors
    Modifier | Constructor and Description
    --- | ---
    `` | `SimpleEventBus()`
    `protected` | `SimpleEventBus(boolean fireInReverseOrder)` Deprecated. This is a legacy feature, required by GWT's old HandlerManager. Reverse order is not honored for handlers tied to a specific event source (via `addHandlerToSource(com.google.web.bindery.event.shared.Event.Type<H>, java.lang.Object, H)`.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods Deprecated Methods
    Modifier and Type | Method and Description
    --- | ---
    `<H> HandlerRegistration` | `addHandler(Event.Type<H> type, H handler)` Adds an unfiltered handler to receive events of this type from all sources.
    `<H> HandlerRegistration` | `addHandlerToSource(Event.Type<H> type, java.lang.Object source, H handler)` Adds a handler to receive events of this type from the given source.
    `protected <H> void` | `doRemove(Event.Type<H> type, java.lang.Object source, H handler)` Deprecated. required by legacy features in GWT's old HandlerManager
    `void` | `fireEvent(Event<?> event)` Fires the event from no source.
    `void` | `fireEventFromSource(Event<?> event, java.lang.Object source)` Fires the given event to the handlers listening to the event's type.
    `protected <H> H` | `getHandler(Event.Type<H> type, int index)` Deprecated. required by legacy features in GWT's old HandlerManager
    `protected int` | `getHandlerCount(Event.Type<?> eventKey)` Deprecated. required by legacy features in GWT's old HandlerManager
    `protected boolean` | `isEventHandled(Event.Type<?> eventKey)` Deprecated. required by legacy features in GWT's old HandlerManager

    - ### Methods inherited from class com.google.web.bindery.event.shared.EventBus

      `dispatchEvent, setSourceOfEvent`

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

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

- - ### Constructor Detail

    - #### SimpleEventBus

          public SimpleEventBus()

    - #### SimpleEventBus

          @Deprecated
          protected SimpleEventBus(boolean fireInReverseOrder)

      Deprecated. This is a legacy feature, required by GWT's old HandlerManager. Reverse order is not honored for handlers tied to a specific event source (via `addHandlerToSource(com.google.web.bindery.event.shared.Event.Type<H>, java.lang.Object, H)`.
      Allows creation of an instance that fires its handlers in the reverse of the order in which they were added, although filtered handlers all fire before unfiltered handlers.

  - ### Method Detail

    - #### addHandler

          public <H> HandlerRegistration addHandler(Event.Type<H> type,
                                                    H handler)

      Description copied from class: `EventBus`
      Adds an unfiltered handler to receive events of this type from all sources.

      It is rare to call this method directly. More typically an `Event` subclass will provide a static `register` method, or a widget will accept handlers directly.

      Specified by:
        `addHandler` in class `EventBus`
      Type Parameters:
        `H` - The type of handler
      Parameters:
        `type` - the event type associated with this handler
        `handler` - the handler
      Returns:
        the handler registration, can be stored in order to remove the handler later

    - #### addHandlerToSource

          public <H> HandlerRegistration addHandlerToSource(Event.Type<H> type,
                                                            java.lang.Object source,
                                                            H handler)

      Description copied from class: `EventBus`
      Adds a handler to receive events of this type from the given source.

      It is rare to call this method directly. More typically a `Event` subclass will provide a static `register` method, or a widget will accept handlers directly.

      Specified by:
        `addHandlerToSource` in class `EventBus`
      Type Parameters:
        `H` - The type of handler
      Parameters:
        `type` - the event type associated with this handler
        `source` - the source associated with this handler
        `handler` - the handler
      Returns:
        the handler registration, can be stored in order to remove the handler later

    - #### fireEvent

          public void fireEvent(Event<?> event)

      Description copied from class: `EventBus`
      Fires the event from no source. Only unfiltered handlers will receive it.

      Any exceptions thrown by handlers will be bundled into a `UmbrellaException` and then re-thrown after all handlers have completed. An exception thrown by a handler will not prevent other handlers from executing.

      Specified by:
        `fireEvent` in class `EventBus`
      Parameters:
        `event` - the event to fire

    - #### fireEventFromSource

          public void fireEventFromSource(Event<?> event,
                                          java.lang.Object source)

      Description copied from class: `EventBus`
      Fires the given event to the handlers listening to the event's type.

      Any exceptions thrown by handlers will be bundled into a `UmbrellaException` and then re-thrown after all handlers have completed. An exception thrown by a handler will not prevent other handlers from executing.

      Specified by:
        `fireEventFromSource` in class `EventBus`
      Parameters:
        `event` - the event to fire

    - #### doRemove

          @Deprecated
          protected <H> void doRemove(Event.Type<H> type,
                                                  java.lang.Object source,
                                                  H handler)

      Deprecated. required by legacy features in GWT's old HandlerManager

    - #### getHandler

          @Deprecated
          protected <H> H getHandler(Event.Type<H> type,
                                                 int index)

      Deprecated. required by legacy features in GWT's old HandlerManager

    - #### getHandlerCount

          @Deprecated
          protected int getHandlerCount(Event.Type<?> eventKey)

      Deprecated. required by legacy features in GWT's old HandlerManager

    - #### isEventHandled

          @Deprecated
          protected boolean isEventHandled(Event.Type<?> eventKey)

      Deprecated. required by legacy features in GWT's old HandlerManager