All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.eclipse.rap.rwt.lifecycle.ILifeCycle Maven / Gradle / Ivy

Go to download

The Rich Ajax Platform lets you build rich, Ajax-enabled Web applications.

There is a newer version: 3.29.0
Show newest version
/*******************************************************************************
 * Copyright (c) 2002, 2013 Innoopract Informationssysteme GmbH and others.
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the Eclipse Public License v1.0
 * which accompanies this distribution, and is available at
 * http://www.eclipse.org/legal/epl-v10.html
 *
 * Contributors:
 *    Innoopract Informationssysteme GmbH - initial API and implementation
 *    EclipseSource - ongoing development
 ******************************************************************************/
package org.eclipse.rap.rwt.lifecycle;

import org.eclipse.rap.rwt.application.Application;
import org.eclipse.rap.rwt.application.ApplicationConfiguration;
import org.eclipse.rap.rwt.remote.RemoteObject;


/**
 * This interface represents the life cycle of a request. It is not intended to be implemented by
 * clients.
 * 

* RWT divides the life cycle of an HTTP request into different phases that are executed * sequentially. Each phase has its special purpose and creates the prerequisites needed by the * following phases for proper execution. *

*

* The phases are: *

*
Prepare UI Root
*
Responsible for invoking entry points.
*
Read Data
*
Reading request parameters and applying the contained status information to the corresponding * widgets. As an example, if a user has entered some characters into a Text control, the characters * are transmitted and applied to the text attribute of the Text instance.
*
Process Action
*
Events are processed which trigger user actions. As an example, when a Button has been * pushed, the SelectionListeners attached to the Button are called.
*
Render
*
JavaScript code is generated for the response, that applies the state changes to the client. * Only those widget attributes that were changed during the processing of the current request are * being rendered. This results in a minimal amount of data that needs to be transferred to the * client. The widget tree is not manipulated in this phase anymore.
*
*

* * @since 2.0 * @deprecated As of 2.0, PhaseListeners should only be registered in an * {@link ApplicationConfiguration}. For new applications and custom widgets, consider * the (still internal) {@link RemoteObject} API which is going to replace * PhaseListener. * @see Application#addPhaseListener(PhaseListener) */ @Deprecated public interface ILifeCycle { /** * Registers a PhaseListener with the life cycle. * * @param listener the listener to be added, must not be null */ void addPhaseListener( PhaseListener listener ); /** * Removes a PhaseListener from the life cycle. Has no effect * if an identical listener is not yet registered. * * @param listener the listener to be removed, must not be null */ void removePhaseListener( PhaseListener listener ); }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy