package com.google.gwt.gwtpages.client.page; import java.io.Serializable; import com.google.gwt.gwtpages.client.GotoPageCommand; import com.google.gwt.gwtpages.client.PageRequestSession; import com.google.gwt.gwtpages.client.Pages; import com.google.gwt.gwtpages.client.page.event.PageEventHandler; import com.google.gwt.gwtpages.client.page.parameters.PageParameters; import com.google.gwt.user.client.Command; import com.google.gwt.user.client.ui.RootPanel; public class DefaultPageLoadingHandler implements PageEventHandler { public static final String LOADING_CLASS_NAME = "ajax-loading"; public void init(Pages pages) { } public void onAfterPageEnter(LoadedPageContainer pageLoadResult, PageParameters parameters, GotoPageCommand command) { } public void onPageEnterSuccess(LoadedPageContainer pageLoadResult, PageParameters parameters, GotoPageCommand command) { RootPanel.getBodyElement().removeClassName(LOADING_CLASS_NAME); } public Command onPageEnterFailure(LoadedPageContainer pageLoadResult, PageParameters parameters, GotoPageCommand command) { RootPanel.getBodyElement().removeClassName(LOADING_CLASS_NAME); return null; } public void onPageRequest(String pageToken, String historyToken, PageRequestSession session) { RootPanel.getBodyElement().addClassName(LOADING_CLASS_NAME); } public void onBeforePageEnter(LoadedPageContainer pageLoadResult, PageParameters parameters, GotoPageCommand command) { } public void onPageLoaded(LoadedPageContainer result) { } public Command onPageNotFound(String historyToken) { RootPanel.getBodyElement().removeClassName(LOADING_CLASS_NAME); return null; } public Command onPageLoadFailure(String historyToken, Throwable cause) { RootPanel.getBodyElement().removeClassName(LOADING_CLASS_NAME); return null; } public void onPageWaitForAsync(LoadedPageContainer loadedPageContainer, PageParameters parameters, GotoPageCommand command) { } public Command onIllegalPageAccess(LoadedPageContainer loadedPageContainer, PageParameters pageParameters, GotoPageCommand command, Serializable... parameters) { RootPanel.getBodyElement().removeClassName(LOADING_CLASS_NAME); return null; } public void onPageRedirect(LoadedPageContainer currentLoadedPageContainer, PageParameters currentParameters, GotoPageCommand currentCommand, GotoPageCommand forwardCommand) { } }