Example usage for org.apache.wicket.request.mapper.parameter PageParameters mergeWith

List of usage examples for org.apache.wicket.request.mapper.parameter PageParameters mergeWith

Introduction

In this page you can find the example usage for org.apache.wicket.request.mapper.parameter PageParameters mergeWith.

Prototype

public PageParameters mergeWith(final PageParameters other) 

Source Link

Document

Merges the page parameters into this, overwriting existing values

Usage

From source file:com.romeikat.datamessie.core.base.ui.page.AbstractAuthenticatedPage.java

License:Open Source License

protected <T extends Page> PageParameters getPageParameters(final NavigationLink<T> navigationLink,
        final PageParameters projectPageParameters) {
    // When navigation from an AbstractDocumentsFilterPage to a different
    // AbstractDocumentsFilterPage, the page parameters should be kept
    final boolean navigatingFromAnAbstractDocumentsFilterPage = AbstractDocumentsFilterPage.class
            .isAssignableFrom(getClass());
    final boolean navigatingToAnAbstractDocumentsFilterPage = AbstractDocumentsFilterPage.class
            .isAssignableFrom(navigationLink.getPageClass());
    final boolean navigatingToADifferentPage = getClass() != navigationLink.getPageClass();
    if (navigatingFromAnAbstractDocumentsFilterPage && navigatingToAnAbstractDocumentsFilterPage
            && navigatingToADifferentPage) {
        final PageParameters currentPageParameters = getPageParameters();
        return currentPageParameters;
    }/*from  w w w.  ja va  2s  . co m*/
    // Otherwise, use the project page parameters and the page parameters specified by the link
    final PageParameters targetPageParameters = projectPageParameters;
    final PageParameters linkPageParameters = navigationLink.getPageParameters();
    if (linkPageParameters != null) {
        targetPageParameters.mergeWith(linkPageParameters);
    }
    return targetPageParameters;
}

From source file:org.apache.openmeetings.web.room.SwfPanel.java

License:Apache License

public SwfPanel(String id, PageParameters pp) {
    super(id);/*from www .j  av  a  2s . c o m*/
    //OK let's find the room
    try {
        StringValue room = pp.get(WICKET_ROOM_ID);
        if (!room.isEmpty()) {
            roomId = room.toLongObject();
        }
    } catch (Exception e) {
        //no-op
    }
    PageParameters spp = new PageParameters(pp);
    if (roomId != null) {
        spp.mergeWith(new PageParameters().add(WICKET_ROOM_ID, roomId));
    }
    add(new Label("init", getInitFunction(spp)).setEscapeModelStrings(false));
    add(new AbstractAjaxTimerBehavior(Duration.minutes(5)) {
        private static final long serialVersionUID = 1L;

        @Override
        protected void onTimer(AjaxRequestTarget target) {
            getBean(SessiondataDao.class).check(WebSession.getSid()); //keep SID alive
        }
    });
    RoomInvitationForm rif = new RoomInvitationForm("form", roomId);
    add(invite = new InvitationDialog("invite", rif));
    rif.setDialog(invite);
    add(createPoll = new CreatePollDialog("createPoll", roomId));
    add(vote = new VoteDialog("vote", roomId));
    add(pollResults = new PollResultsDialog("pollResults", roomId));
    add(startSharing = new StartSharingEventBehavior(roomId));
    if (roomId != null && roomId.longValue() > 0) {
        add(new AbstractDefaultAjaxBehavior() {
            private static final long serialVersionUID = 1L;

            @Override
            protected void respond(AjaxRequestTarget target) {
                invite.updateModel(target);
                invite.open(target);
            }

            @Override
            public void renderHead(Component component, IHeaderResponse response) {
                super.renderHead(component, response);
                response.render(new PriorityHeaderItem(JavaScriptHeaderItem
                        .forScript(getNamedFunction("openInvitation", this), "openInvitation")));
            }
        });
        add(new AbstractDefaultAjaxBehavior() {
            private static final long serialVersionUID = 1L;

            @Override
            protected void respond(AjaxRequestTarget target) {
                String publicSid = getPublicSid();
                Client c = getClient(publicSid);
                if (c != null && c.getIsMod()) {
                    createPoll.updateModel(target, publicSid);
                    createPoll.open(target);
                }
            }

            @Override
            public void renderHead(Component component, IHeaderResponse response) {
                super.renderHead(component, response);
                response.render(new PriorityHeaderItem(JavaScriptHeaderItem.forScript(
                        getNamedFunction("createPoll", this, explicit(PARAM_PUBLIC_SID)), "createPoll")));
            }
        });
        add(new AbstractDefaultAjaxBehavior() {
            private static final long serialVersionUID = 1L;

            @Override
            protected void respond(AjaxRequestTarget target) {
                Client c = getClient(getPublicSid());
                if (c != null) {
                    pollResults.updateModel(target, c.getIsMod());
                    pollResults.open(target);
                }
            }

            @Override
            public void renderHead(Component component, IHeaderResponse response) {
                super.renderHead(component, response);
                response.render(new PriorityHeaderItem(JavaScriptHeaderItem.forScript(
                        getNamedFunction("pollResults", this, explicit(PARAM_PUBLIC_SID)), "pollResults")));
            }
        });
        add(new AbstractDefaultAjaxBehavior() {
            private static final long serialVersionUID = 1L;

            @Override
            protected void respond(AjaxRequestTarget target) {
                if (getBean(PollDao.class).hasPoll(roomId)
                        && !getBean(PollDao.class).hasVoted(roomId, getUserId())
                        && getClient(getPublicSid()) != null) {
                    vote.updateModel(target);
                    vote.open(target);
                }
            }

            @Override
            public void renderHead(Component component, IHeaderResponse response) {
                super.renderHead(component, response);
                response.render(new PriorityHeaderItem(JavaScriptHeaderItem
                        .forScript(getNamedFunction("vote", this, explicit(PARAM_PUBLIC_SID)), "vote")));
            }
        });
        add(new AbstractDefaultAjaxBehavior() {
            private static final long serialVersionUID = 1L;

            @Override
            protected void respond(AjaxRequestTarget target) {
                startSharing.respond(target);
            }

            @Override
            public void renderHead(Component component, IHeaderResponse response) {
                super.renderHead(component, response);
                response.render(new PriorityHeaderItem(JavaScriptHeaderItem.forScript(
                        getNamedFunction("startSharing", this, explicit(PARAM_PUBLIC_SID)), "startSharing")));
            }
        });
    }
}