Overview | Package | Class | Use | Deprecated | Help
| GWT 2.7.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.google.web.bindery.event.shared
Class EventBus

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

Direct Known Subclasses:
  CountingEventBus, EventBus, RecordingEventBus, ResettableEventBus, SimpleEventBus

    public abstract class EventBus

extends java.lang.Object

Dispatches `Event`s to interested parties. Eases decoupling by allowing objects to interact without having direct dependencies upon one another, and without requiring event sources to deal with maintaining handler lists. There will typically be one EventBus per application, broadcasting events that may be of general interest.

See Also:
  `SimpleEventBus`, `ResettableEventBus`, `CountingEventBus`

Constructor Summary
`EventBus()`

Method Summary
`abstract
`<H> HandlerRegistration`
` | `addHandler(Event.Type<H> type, H handler)` Adds an unfiltered handler to receive events of this type from all sources.
`abstract
`<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 static
`<H> void`
` | `dispatchEvent(Event<H> event, H handler)` Invokes `event.dispatch` with `handler`.
`abstract void` | `fireEvent(Event<?> event)` Fires the event from no source.
`abstract void` | `fireEventFromSource(Event<?> event, java.lang.Object source)` Fires the given event to the handlers listening to the event's type.
`protected static void` | `setSourceOfEvent(Event<?> event, java.lang.Object source)` Sets `source` as the source of `event`.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### EventBus

    public EventBus()

Method Detail

### dispatchEvent

    protected static <H> void dispatchEvent(Event<H> event,
                                            H handler)

  Invokes `event.dispatch` with `handler`.

  Protected to allow EventBus implementations in different packages to dispatch events even though the `event.dispatch` method is protected.

### setSourceOfEvent

    protected static void setSourceOfEvent(Event<?> event,
                                           java.lang.Object source)

  Sets `source` as the source of `event`.

  Protected to allow EventBus implementations in different packages to set an event source even though the `event.setSource` method is protected.

### addHandler

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

  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.

  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 abstract <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.

  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.

  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 abstract void fireEvent(Event<?> event)

  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.

  Parameters:
    `event` - the event to fire
  Throws:
    `UmbrellaException` - wrapping exceptions thrown by handlers

### fireEventFromSource

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

  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.

  Parameters:
    `event` - the event to fire
  Throws:
    `UmbrellaException` - wrapping exceptions thrown by handlers

Overview | Package | Class | Use | Deprecated | Help
| GWT 2.7.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD