From 8878502b6d9ad913c706d4e4cd40cf7e4376622b Mon Sep 17 00:00:00 2001
From: James Moger <james.moger@gitblit.com>
Date: Wed, 26 Feb 2014 21:45:20 -0500
Subject: [PATCH] Updated settings documentation (issue-352)
---
src/main/java/com/gitblit/wicket/GitblitParamUrlCodingStrategy.java | 30 +++++++++++++++++++-----------
1 files changed, 19 insertions(+), 11 deletions(-)
diff --git a/src/main/java/com/gitblit/wicket/GitblitParamUrlCodingStrategy.java b/src/main/java/com/gitblit/wicket/GitblitParamUrlCodingStrategy.java
index fb86fb0..4f67a4a 100644
--- a/src/main/java/com/gitblit/wicket/GitblitParamUrlCodingStrategy.java
+++ b/src/main/java/com/gitblit/wicket/GitblitParamUrlCodingStrategy.java
@@ -25,26 +25,28 @@
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import com.gitblit.GitBlit;
+import com.gitblit.IStoredSettings;
import com.gitblit.Keys;
/**
* Simple subclass of mixed parameter url coding strategy that works around the
* encoded forward-slash issue that is present in some servlet containers.
- *
+ *
* https://issues.apache.org/jira/browse/WICKET-1303
* http://tomcat.apache.org/security-6.html
- *
+ *
* @author James Moger
- *
+ *
*/
public class GitblitParamUrlCodingStrategy extends MixedParamUrlCodingStrategy {
private Logger logger = LoggerFactory.getLogger(GitblitParamUrlCodingStrategy.class);
+ private IStoredSettings settings;
+
/**
* Construct.
- *
+ *
* @param <C>
* @param mountPath
* mount path (not empty)
@@ -53,20 +55,25 @@
* @param parameterNames
* the parameter names (not null)
*/
- public <C extends Page> GitblitParamUrlCodingStrategy(String mountPath,
+ public <C extends Page> GitblitParamUrlCodingStrategy(
+ IStoredSettings settings,
+ String mountPath,
Class<C> bookmarkablePageClass, String[] parameterNames) {
+
super(mountPath, bookmarkablePageClass, parameterNames);
+ this.settings = settings;
}
/**
* Url encodes a string that is mean for a URL path (e.g., between slashes)
- *
+ *
* @param string
* string to be encoded
* @return encoded string
*/
+ @Override
protected String urlEncodePathComponent(String string) {
- char altChar = GitBlit.getChar(Keys.web.forwardSlashCharacter, '/');
+ char altChar = settings.getChar(Keys.web.forwardSlashCharacter, '/');
if (altChar != '/') {
string = string.replace('/', altChar);
}
@@ -76,12 +83,13 @@
/**
* Returns a decoded value of the given value (taken from a URL path
* section)
- *
+ *
* @param value
* @return Decodes the value
*/
+ @Override
protected String urlDecodePathComponent(String value) {
- char altChar = GitBlit.getChar(Keys.web.forwardSlashCharacter, '/');
+ char altChar = settings.getChar(Keys.web.forwardSlashCharacter, '/');
if (altChar != '/') {
value = value.replace(altChar, '/');
}
@@ -90,7 +98,7 @@
/**
* Gets the decoded request target.
- *
+ *
* @param requestParameters
* the request parameters
* @return the decoded request target
--
Gitblit v1.9.1