summaryrefslogtreecommitdiffstats
path: root/src/main/java/com/gitblit/utils/StringUtils.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/com/gitblit/utils/StringUtils.java')
-rw-r--r--src/main/java/com/gitblit/utils/StringUtils.java21
1 files changed, 21 insertions, 0 deletions
diff --git a/src/main/java/com/gitblit/utils/StringUtils.java b/src/main/java/com/gitblit/utils/StringUtils.java
index e18bdc4f..ed10eb6c 100644
--- a/src/main/java/com/gitblit/utils/StringUtils.java
+++ b/src/main/java/com/gitblit/utils/StringUtils.java
@@ -747,4 +747,25 @@ public class StringUtils {
}
return input.replace('\n',' ').replace('\r', ' ').trim();
}
+
+
+ /**
+ * Encode the username for user in an url.
+ *
+ * @param name
+ * @return the encoded name
+ */
+ public static String encodeUsername(String name) {
+ return name.replace("@", "%40").replace(" ", "%20").replace("\\", "%5C");
+ }
+
+ /**
+ * Decode a username from an encoded url.
+ *
+ * @param name
+ * @return the decoded name
+ */
+ public static String decodeUsername(String name) {
+ return name.replace("%40", "@").replace("%20", " ").replace("%5C", "\\");
+ }
} \ No newline at end of file