Example usage for org.apache.wicket Page addOrReplace

List of usage examples for org.apache.wicket Page addOrReplace

Introduction

In this page you can find the example usage for org.apache.wicket Page addOrReplace.

Prototype

public MarkupContainer addOrReplace(final Component... children) 

Source Link

Document

Replaces a child component of this container with another or just adds it in case no child with the same id existed yet.

Usage

From source file:com.wiquery.plugins.jqgrid.component.XMLDataRequestTarget.java

License:Apache License

/**
 * /*from w ww. ja  va  2  s .c  o  m*/
 * @param response
 * @param component
 */
private void respondHeaderContribution(final Response response, final Component component,
        StringBuffer writer) {
    headerRendering = true;

    // create the htmlheadercontainer if needed
    if (header == null) {
        header = new AjaxHtmlHeaderContainer(HtmlHeaderSectionHandler.HEADER_ID, this);
        final Page page = component.getPage();
        page.addOrReplace(header);
    }

    // save old response, set new
    Response oldResponse = RequestCycle.get().setResponse(encodingHeaderResponse);

    encodingHeaderResponse.reset();

    // render the head of component and all it's children

    component.renderHead(header);

    if (component instanceof MarkupContainer) {
        ((MarkupContainer) component).visitChildren(new Component.IVisitor<Component>() {
            public Object component(Component component) {
                if (component.isVisibleInHierarchy()) {
                    component.renderHead(header);
                    return CONTINUE_TRAVERSAL;
                } else {
                    return CONTINUE_TRAVERSAL_BUT_DONT_GO_DEEPER;
                }
            }
        });
    }

    // revert to old response

    RequestCycle.get().setResponse(oldResponse);

    if (encodingHeaderResponse.getContents().length() != 0) {
        writer.append("<header-contribution");

        if (encodingHeaderResponse.isContentsEncoded()) {
            writer.append(" encoding=\"");
            writer.append(getEncodingName());
            writer.append("\" ");
        }

        // we need to write response as CDATA and parse it on client,
        // because
        // konqueror crashes when there is a <script> element
        writer.append("><![CDATA[<head xmlns:wicket=\"http://wicket.apache.org\">");

        writer.append(encodingHeaderResponse.getContents());

        writer.append("</head>]]>");

        writer.append("</header-contribution>");
    }

    headerRendering = false;
}

From source file:org.apache.karaf.webconsole.examples.branding.ExampleBrandProvider.java

License:Apache License

public void modify(Page page) {
    page.addOrReplace(new Label("footer", "Branded WebConsole"));
}

From source file:org.xaloon.wicket.component.application.VirtualPageFactory.java

License:Apache License

private <C extends Page> Page newPageInternal(Class<C> pageClass, PageParameters parameters) {
    MountPanel mp = pageClass.getAnnotation(MountPanel.class);
    if (mp != null) {
        try {//w w  w  . ja v  a2 s  . c o  m

            Panel content = newInstance(mp, parameters);
            Class<? extends Page> layoutPageClass = AbstractWebApplication.get().getLayoutPageClass();
            if (layoutPageClass != null) {
                Page page = createPage(layoutPageClass, parameters);
                page.addOrReplace(content);
                injectAdditionalInfo(page, pageClass);

                return page;
            }
        } catch (Exception e) {
            log.error(e);
            e.printStackTrace();
        }
    }
    return createPage(pageClass, parameters);
}

From source file:sf.wicklet.gwt.server.ajax.impl.AbstractGwtAjaxResponse.java

License:Apache License

/**
 * @param response/*from   w  w w  .  j  av  a2  s. c o  m*/
 *      the response to write to
 * @param component
 *      to component which will contribute to the header
 */
protected void writeHeaderContribution(final Response response, final Component component) {
    headerRendering = true;
    // create the htmlheadercontainer if needed
    if (header == null) {
        header = new AjaxHtmlHeaderContainer(this);
        final Page parentPage = component.getPage();
        parentPage.addOrReplace(header);
    }
    final RequestCycle requestCycle = component.getRequestCycle();
    // save old response, set new
    final Response oldResponse = requestCycle.setResponse(encodingHeaderResponse);
    try {
        encodingHeaderResponse.reset();
        // render the head of component and all it's children
        component.renderHead(header);
        if (component instanceof MarkupContainer) {
            ((MarkupContainer) component).visitChildren(new IVisitor<Component, Void>() {
                @Override
                public void component(final Component component, final IVisit<Void> visit) {
                    if (component.isVisibleInHierarchy()) {
                        component.renderHead(header);
                    } else {
                        visit.dontGoDeeper();
                    }
                }
            });
        }
    } finally {
        // revert to old response
        requestCycle.setResponse(oldResponse);
    }
    writeHeaderContribution(response);
    headerRendering = false;
}