com.google.gwt.gwtpages.client.page.LoadedPageContainer.java Source code

Java tutorial

Introduction

Here is the source code for com.google.gwt.gwtpages.client.page.LoadedPageContainer.java

Source

package com.google.gwt.gwtpages.client.page;

import com.google.gwt.gwtpages.client.page.loader.PageLoader;

/**
 * Entity class used to contain a {@link Page} and associated data.
 * 
 * @author Joe Hudson
 */
public class LoadedPageContainer {

    private String pageToken;
    private Page page;
    private PageAttributes attributes;
    private PageLoader pageLoader;

    /**
     * Default constructor
     */
    public LoadedPageContainer() {
    }

    /**
     * Default constructor
     */
    public LoadedPageContainer(Page page) {
        this.page = page;
    }

    /**
     * @param pageToken
     *            the specific segment of the history token which identifies the
     *            page
     * @param page
     *            the loaded {@link Page}
     * @param attributes
     *            the {@link PageAttributes} provided by the {@link PageLoader}
     * @param pageLoader
     *            the {@link PageLoader} used to actually load the page (useful
     *            with nested page loaders)
     */
    public LoadedPageContainer(String pageToken, Page presenter, PageAttributes attributes, PageLoader pageLoader) {
        this.pageToken = pageToken;
        this.page = presenter;
        this.attributes = attributes;
        this.pageLoader = pageLoader;
    }

    /**
     * Return the the specific segment of the history token which identifies the
     * page
     */
    public String getPageToken() {
        return pageToken;
    }

    /**
     * Set the specific segment of the history token which identifies the page
     * 
     * @param pageToken
     *            the page token
     */
    public void setPageToken(String pageToken) {
        this.pageToken = pageToken;
    }

    /**
     * Return the {@link Page}
     */
    public Page getPage() {
        return page;
    }

    /**
     * Set the {@link Page}
     */
    public void setPage(Page page) {
        this.page = page;
    }

    /**
     * Return the {@link PageAttributes}
     */
    public PageAttributes getAttributes() {
        return attributes;
    }

    /**
     * Set the {@link PageAttributes}
     */
    public void setAttributes(PageAttributes attributes) {
        this.attributes = attributes;
    }

    /**
     * Return the {@link PageLoader}
     */
    public PageLoader getPageLoader() {
        return pageLoader;
    }

    /**
     * Set the {@link PageLoader}
     */
    public void setPageLoader(PageLoader pageLoader) {
        this.pageLoader = pageLoader;
    }

    /**
     * Return a duplicate copy of this page load result
     */
    public LoadedPageContainer copy() {
        return new LoadedPageContainer(pageToken, page, (null != attributes) ? attributes.copy() : null,
                pageLoader);
    }
}