public class

ActivityManager

extends Object
implements PlaceChangeEvent.Handler PlaceChangeRequestEvent.Handler
java.lang.Object
   ↳ com.google.gwt.activity.shared.ActivityManager

Class Overview

Manages Activity objects that should be kicked off in response to PlaceChangeEvent events. Each activity can start itself asynchronously, and provides a widget to be shown when it's ready to run.

Summary

Public Constructors
ActivityManager(ActivityMapper mapper, EventBus eventBus)
Create an ActivityManager.
Public Methods
void onPlaceChange(PlaceChangeEvent event)
Deactivate the current activity, find the next one from our ActivityMapper, and start it.
void onPlaceChangeRequest(PlaceChangeRequestEvent event)
Reject the place change if the current activity is not willing to stop.
void setDisplay(AcceptsOneWidget display)
Sets the display for the receiver, and has the side effect of starting or stopping its monitoring the event bus for place change events.
[Expand]
Inherited Methods
From class java.lang.Object
From interface com.google.gwt.place.shared.PlaceChangeEvent.Handler
From interface com.google.gwt.place.shared.PlaceChangeRequestEvent.Handler

Public Constructors

public ActivityManager (ActivityMapper mapper, EventBus eventBus)

Create an ActivityManager. Next call setDisplay(AcceptsOneWidget).

Parameters
mapper finds the Activity for a given Place
eventBus source of PlaceChangeEvent and PlaceChangeRequestEvent events.

Public Methods

public void onPlaceChange (PlaceChangeEvent event)

Deactivate the current activity, find the next one from our ActivityMapper, and start it.

The current activity's widget will be hidden immediately, which can cause flicker if the next activity provides its widget asynchronously. That can be minimized by decent caching. Perenially slow activities might mitigate this by providing a widget immediately, with some kind of "loading" treatment.

Parameters
event the PlaceChangeEvent

public void onPlaceChangeRequest (PlaceChangeRequestEvent event)

Reject the place change if the current activity is not willing to stop.

Parameters
event the PlaceChangeRequestEvent

public void setDisplay (AcceptsOneWidget display)

Sets the display for the receiver, and has the side effect of starting or stopping its monitoring the event bus for place change events.

If you are disposing of an ActivityManager, it is important to call setDisplay(null) to get it to deregister from the event bus, so that it can be garbage collected.

Parameters
display an instance of AcceptsOneWidget