/** * {@inheritDoc} * * Remove the first parameter because it brings meta information like locale */ @Override protected void removeMetaParameter(final Url urlCopy) { urlCopy.getQueryParameters().remove(0); } }
/** * {@inheritDoc} * * Remove the first parameter because it brings meta information like locale */ @Override protected void removeMetaParameter(final Url urlCopy) { urlCopy.getQueryParameters().remove(0); } }
/** * {@inheritDoc} * * Removes the first query parameter only if {@link PageComponentInfo#parse(String)} returns * non-null instance */ @Override protected void removeMetaParameter(final Url urlCopy) { if (MapperUtils.parsePageComponentInfoParameter(urlCopy.getQueryParameters().get(0)) != null) { urlCopy.getQueryParameters().remove(0); } }
/** * {@inheritDoc} * * Removes the first query parameter only if {@link PageComponentInfo#parse(String)} returns * non-null instance */ @Override protected void removeMetaParameter(final Url urlCopy) { if (MapperUtils.parsePageComponentInfoParameter(urlCopy.getQueryParameters().get(0)) != null) { urlCopy.getQueryParameters().remove(0); } }
/** * @see org.apache.wicket.request.IRequestParameters#getParameterNames() */ @Override public Set<String> getParameterNames() { Set<String> result = new LinkedHashSet<>(); for (QueryParameter parameter : url.getQueryParameters()) { result.add(parameter.getName()); } return Collections.unmodifiableSet(result); }
/** * @see org.apache.wicket.request.IRequestParameters#getParameterNames() */ @Override public Set<String> getParameterNames() { Set<String> result = new LinkedHashSet<>(); for (QueryParameter parameter : url.getQueryParameters()) { result.add(parameter.getName()); } return Collections.unmodifiableSet(result); }
/** * Convenience method that removes adds a query parameter with given name * * @param name * @param value */ public void addQueryParameter(final String name, final Object value) { if (value != null) { QueryParameter parameter = new QueryParameter(name, value.toString()); getQueryParameters().add(parameter); } }
/** * Convenience method that removes adds a query parameter with given name * * @param name * @param value */ public void addQueryParameter(final String name, final Object value) { if (value != null) { QueryParameter parameter = new QueryParameter(name, value.toString()); getQueryParameters().add(parameter); } }
/** * Convenience method that removes all query parameters with given name. * * @param name * query parameter name */ public void removeQueryParameters(final String name) { for (Iterator<QueryParameter> i = getQueryParameters().iterator(); i.hasNext();) { QueryParameter param = i.next(); if (Objects.equal(name, param.getName())) { i.remove(); } } }
/** * Convenience method that removes all query parameters with given name. * * @param name * query parameter name */ public void removeQueryParameters(final String name) { for (Iterator<QueryParameter> i = getQueryParameters().iterator(); i.hasNext();) { QueryParameter param = i.next(); if (Objects.equal(name, param.getName())) { i.remove(); } } }
/** * {@inheritDoc} */ @Override public boolean equals(final Object obj) { if (this == obj) { return true; } if ((obj instanceof Url) == false) { return false; } Url rhs = (Url)obj; return getSegments().equals(rhs.getSegments()) && getQueryParameters().equals(rhs.getQueryParameters()) && Objects.isEqual(getFragment(), rhs.getFragment()); }
/** * Extracts the {@link PageComponentInfo} from the URL. The {@link PageComponentInfo} is encoded * as the very first query parameter and the parameter consists of name only (no value). * * @param url * * @return PageComponentInfo instance if one was encoded in URL, <code>null</code> otherwise. */ public static PageComponentInfo getPageComponentInfo(final Url url) { Args.notNull(url, "url"); for (Url.QueryParameter queryParameter : url.getQueryParameters()) { PageComponentInfo pageComponentInfo = parsePageComponentInfoParameter(queryParameter); if (pageComponentInfo != null) { return pageComponentInfo; } } return null; } }
/** * Check if the URL is for home page and the home page class match mounted class. If so, * redirect to mounted URL. * * @param url * @return request handler or <code>null</code> */ private boolean checkHomePage(Url url) { if (url.getSegments().isEmpty() && url.getQueryParameters().isEmpty()) { // this is home page if (getPageClass().equals(getContext().getHomePageClass())) { return true; } } return false; }
/** * Check if the URL is for home page and the home page class match mounted class. If so, * redirect to mounted URL. * * @param url * @return request handler or <code>null</code> */ private boolean checkHomePage(Url url) { if (url.getSegments().isEmpty() && url.getQueryParameters().isEmpty()) { // this is home page if (getPageClass().equals(getContext().getHomePageClass())) { return true; } } return false; }
/** * {@inheritDoc} */ @Override public int hashCode() { return Objects.hashCode(getSegments(), getQueryParameters(), getFragment()); }
/** * {@inheritDoc} */ @Override public int hashCode() { return Objects.hashCode(getSegments(), getQueryParameters(), getFragment()); }
/** * Encodes the {@link PageComponentInfo} instance as the first query string parameter to the * URL. * * @param url * @param info */ protected void encodePageComponentInfo(Url url, PageComponentInfo info) { Args.notNull(url, "url"); if (info != null) { String s = info.toString(); if (!Strings.isEmpty(s)) { QueryParameter parameter = new QueryParameter(s, ""); url.getQueryParameters().add(parameter); } } }
/** * Encodes the {@link PageComponentInfo} instance as the first query string parameter to the * URL. * * @param url * @param info */ protected void encodePageComponentInfo(Url url, PageComponentInfo info) { Args.notNull(url, "url"); if (info != null) { String s = info.toString(); if (!Strings.isEmpty(s)) { QueryParameter parameter = new QueryParameter(s, ""); url.getQueryParameters().add(parameter); } } }
/** * Encodes the attributes of the given resource reference in the specified url. * * @param url * the resource reference attributes to encode * @param reference * * @see ResourceReference.UrlAttributes * @see Url */ public static void encodeResourceReferenceAttributes(Url url, ResourceReference reference) { Args.notNull(url, "url"); Args.notNull(reference, "reference"); String encoded = encodeResourceReferenceAttributes(reference.getUrlAttributes()); if (!Strings.isEmpty(encoded)) { url.getQueryParameters().add(new Url.QueryParameter(encoded, "")); } }
@Override public Url encodePageParameters(final PageParameters pageParameters) { Url url = new Url(); if (pageParameters != null) { for (int i = 0; i < pageParameters.getIndexedCount(); ++i) { url.getSegments().add(pageParameters.get(i).toString()); } for (PageParameters.NamedPair pair : pageParameters.getAllNamed()) { QueryParameter param = new QueryParameter(pair.getKey(), pair.getValue()); url.getQueryParameters().add(param); } } return url; } }