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

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

Introduction

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

Prototype

@Override
    public PageParameters remove(final String name, final String... values) 

Source Link

Usage

From source file:codetroopers.wicket.web.routes.mapper.ParamCheckingPatternMapper.java

License:Apache License

/**
 * First delegate to the superclass to parse the request as normal, then additionally
 * verify that all regular expressions specified in the placeholders match.
 *//*from   w ww  .j av  a2 s.co m*/
@Override
protected UrlInfo parseRequest(Request request) {
    // Parse the request normally. If the standard impl can't parse it, we won't either.
    UrlInfo info = super.parseRequest(request);
    if (null == info || null == info.getPageParameters()) {
        return info;
    }

    // If exact matching, reject URLs that have more than expected number of segments
    if (exact) {
        int requestNumSegments = request.getUrl().getSegments().size();
        if (requestNumSegments > this.numSegments) {
            return null;
        }
    }

    // Loop through each placeholder and verify that the regex of the placeholder matches
    // the value that was provided in the request url. If any of the values don't match,
    // immediately return null signifying that the url is not matched by this mapper.
    PageParameters params = info.getPageParameters();
    for (PatternPlaceholder pp : getPatternPlaceholders()) {
        List<StringValue> values = params.getValues(pp.getName());
        if (null == values || values.size() == 0) {
            values = Arrays.asList(StringValue.valueOf(""));
        }
        for (StringValue val : values) {
            if (!pp.matches(val.toString())) {
                if (LOGGER.isDebugEnabled()) {
                    LOGGER.debug(
                            String.format("Parameter \"%s\" did not match pattern placeholder %s", val, pp));
                }
                if (ignoreIncorrectParameters) {
                    params.remove(pp.getName(), val.toString());
                } else {
                    return null;
                }
            }
        }
    }
    return info;
}

From source file:de.heartbeat.backend.GraphPage.java

License:Apache License

public GraphPage(final PageParameters parameters) {
    StringValue appview = parameters.get("appview");
    if (!appview.isEmpty()) {
        if (valueOf(appview).equals("true")) {
            isAppview = Boolean.parseBoolean(appview.toString());
        }/*w w w  . j  a  va2  s .  c  o m*/
    }

    StringValue imageview = parameters.get("imageview");
    if (!imageview.isEmpty()) {
        if (valueOf(imageview).equals("true")) {
            isImage = Boolean.parseBoolean(imageview.toString());
            parameters.remove("imageview", "true");
        }
    }

    WebMarkupContainer imageMenu = new WebMarkupContainer("imageMenu");
    Link liveChart2 = new Link("liveChart2") {
        @Override
        public void onClick() {
            setResponsePage(new SprideChart(parameters));
        }
    };
    Link average2 = new Link("averageChart2") {
        @Override
        public void onClick() {
            setResponsePage(new AverageLineChart(parameters));
        }
    };

    Link year2 = new Link("yearChart2") {
        @Override
        public void onClick() {
            setResponsePage(new YearOverview(parameters));
        }
    };

    imageMenu.add(liveChart2);
    imageMenu.add(average2);
    imageMenu.add(year2);

    WebMarkupContainer menu = new WebMarkupContainer("menu");
    WebMarkupContainer adminMenu = new WebMarkupContainer("adminMenu");
    Link addUser = new Link("addUser") {
        @Override
        public void onClick() {
            setResponsePage(UserForm.class);
        }
    };

    Link user = new Link("userOverview") {
        @Override
        public void onClick() {
            setResponsePage(UserView.class);
        }
    };
    Link overview = new Link("overview") {
        @Override
        public void onClick() {
            setResponsePage(HeartBeatOverview.class);
        }
    };

    adminMenu.add(addUser);
    adminMenu.add(user);
    adminMenu.add(overview);

    WebMarkupContainer graphMenu = new WebMarkupContainer("graphMenu");
    WebMarkupContainer container = new WebMarkupContainer("container");
    Link liveChart = new Link("liveChart") {
        @Override
        public void onClick() {
            setResponsePage(new SprideChart(parameters));
        }
    };
    Link average = new Link("averageChart") {
        @Override
        public void onClick() {
            setResponsePage(new AverageLineChart(parameters));
        }
    };
    Link year = new Link("yearChart") {
        @Override
        public void onClick() {
            setResponsePage(new YearOverview(parameters));
        }
    };

    adminMenu.setVisible(!isAppview);
    graphMenu.add(average);
    graphMenu.add(liveChart);
    graphMenu.add(year);
    menu.add(graphMenu);
    menu.add(adminMenu);
    imageMenu.setVisible(isImage);
    container.add(imageMenu);
    container.add(new FeedbackPanel("feedback"));
    container.add(menu);
    add(container);
}

From source file:org.yes.cart.web.util.WicketUtil.java

License:Apache License

/**
 * Get the filtered request parameters that does not
 * not contain given key and value./*  w w w.  ja v a 2  s.c o m*/
 *
 * @param parameters original request parameters
 * @param key        key part to remove
 * @param value      value part to remove
 * @return new filtered {@link PageParameters}
 */
public PageParameters getFilteredRequestParameters(final PageParameters parameters, final String key,
        final String value) {
    final PageParameters rez = getFilteredRequestParameters(parameters);
    final List<StringValue> vals = rez.getValues(key);
    if (vals.size() > 0) {
        rez.remove(key, value);
    } else {
        rez.remove(key);
    }
    return rez;
}

From source file:org.yes.cart.web.util.WicketUtilTest.java

License:Apache License

@Test
public void testGetFilteredRequestParametersForSearch() {
    PageParameters parametersToFilter = new PageParameters("query=val1,query=val2,query=val3");
    assertEquals(1, parametersToFilter.getNamedKeys().size());
    assertEquals(3, parametersToFilter.getValues("query").size());
    parametersToFilter.remove("query", "val2");
    assertEquals(2, parametersToFilter.getValues("query").size());
    for (StringValue val : parametersToFilter.getValues("query")) {
        assertFalse("val2".equals(val.toString()));
    }/*from  w  w  w  . j a  va  2s  . com*/
}