public abstract class

EventBus

extends Object
implements HasHandlers
java.lang.Object
   ↳ com.google.gwt.event.shared.EventBus
Known Direct Subclasses

Class Overview

Dispatches GwtEvents 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.

Summary

Public Constructors
EventBus()
Public Methods
abstract <H extends EventHandler> HandlerRegistration addHandler(Type<H> type, H handler)
Adds an unfiltered handler to receive events of this type from all sources.
abstract <H extends EventHandler> HandlerRegistration addHandlerToSource(Type<H> type, Object source, H handler)
Adds a handler to receive events of this type from the given source.
abstract void fireEvent(GwtEvent<?> event)
Fires the event from no source.
abstract void fireEventFromSource(GwtEvent<?> event, Object source)
Fires the given event to the handlers listening to the event's type.
[Expand]
Inherited Methods
From class java.lang.Object
From interface com.google.gwt.event.shared.HasHandlers

Public Constructors

public EventBus ()

Public Methods

public abstract HandlerRegistration addHandler (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 a GwtEvent subclass will provide a static register method, or a widget will accept handlers directly.

A tip: to make a handler de-register itself, the following works:

new MyHandler() {
  HandlerRegistration reg = MyEvent.register(eventBus, this);
 
  public void onMyThing(MyEvent event) {
    /* do your thing */
    reg.removeHandler();
  }
 };
 

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

public abstract HandlerRegistration addHandlerToSource (Type<H> type, 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 GwtEvent subclass will provide a static register method, or a widget will accept handlers directly.

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

public abstract void fireEvent (GwtEvent<?> event)

Fires the event from no source. Only unfiltered handlers will receive it.

Parameters
event the event to fire

public abstract void fireEventFromSource (GwtEvent<?> event, 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