From 70b492b89bdad54abc10795d12f306d8972d94a7 Mon Sep 17 00:00:00 2001 From: James Moger Date: Mon, 10 Oct 2011 19:11:35 -0400 Subject: Documentation. Updated snapshot to 0.7.0. Merged server.contextPath. --- .../wicket/GitblitParamUrlCodingStrategy.java | 28 ++++++++++++++++++++++ 1 file changed, 28 insertions(+) (limited to 'src/com/gitblit/wicket/GitblitParamUrlCodingStrategy.java') diff --git a/src/com/gitblit/wicket/GitblitParamUrlCodingStrategy.java b/src/com/gitblit/wicket/GitblitParamUrlCodingStrategy.java index 3248a082..fb86fb0e 100644 --- a/src/com/gitblit/wicket/GitblitParamUrlCodingStrategy.java +++ b/src/com/gitblit/wicket/GitblitParamUrlCodingStrategy.java @@ -15,8 +15,15 @@ */ package com.gitblit.wicket; +import java.text.MessageFormat; + +import org.apache.wicket.IRequestTarget; import org.apache.wicket.Page; +import org.apache.wicket.PageParameters; +import org.apache.wicket.request.RequestParameters; import org.apache.wicket.request.target.coding.MixedParamUrlCodingStrategy; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import com.gitblit.GitBlit; import com.gitblit.Keys; @@ -33,6 +40,8 @@ import com.gitblit.Keys; */ public class GitblitParamUrlCodingStrategy extends MixedParamUrlCodingStrategy { + private Logger logger = LoggerFactory.getLogger(GitblitParamUrlCodingStrategy.class); + /** * Construct. * @@ -78,4 +87,23 @@ public class GitblitParamUrlCodingStrategy extends MixedParamUrlCodingStrategy { } return super.urlDecodePathComponent(value); } + + /** + * Gets the decoded request target. + * + * @param requestParameters + * the request parameters + * @return the decoded request target + */ + @Override + public IRequestTarget decode(RequestParameters requestParameters) { + final String parametersFragment = requestParameters.getPath().substring( + getMountPath().length()); + logger.debug(MessageFormat + .format("REQ: {0} PARAMS {1}", getMountPath(), parametersFragment)); + + final PageParameters parameters = new PageParameters(decodeParameters(parametersFragment, + requestParameters.getParameters())); + return super.decode(requestParameters); + } } \ No newline at end of file -- cgit v1.2.3