mhoffrog commented on code in PR #237:
URL: https://github.com/apache/maven-scm/pull/237#discussion_r2022735104
##########
maven-scm-providers/maven-scm-providers-git/maven-scm-provider-git-commons/src/main/java/org/apache/maven/scm/provider/git/util/GitUtil.java:
##########
@@ -77,4 +89,52 @@ public static void setSettingsDirectory(File directory) {
public static File getSettingsFile() {
return new File(settingsDirectory, GIT_SETTINGS_FILENAME);
}
+
+ /**
+ * Encodes the passed String as UTF-8 using an algorithm that's
+ * compatible with JavaScript's <code>encodeURIComponent</code> function.
+ * Returns <code>null</code> if the String is <code>null</code>.
+ * See
http://stackoverflow.com/questions/607176/java-equivalent-to-javascripts-encodeuricomponent-that-produces-identical-output
+ *
+ * @author John Topley
+ * @param s The String to be encoded
+ * @return the encoded String
+ */
+ public static String encodeURIComponent(String s) {
+ String result = s;
+ if (s != null) {
+ try {
+ result = URLEncoder.encode(s, StandardCharsets.UTF_8.name())
// nl
Review Comment:
It is for forms but it encodes more special chars as well as probable
unicode chars properly. If you look to the utility method in total it does some
adjustments in addition to comply fully with its Javascript pendent. I would
prefer it for the SCM user:password encoding over the plain URI encoding. If
you insist on URI encoding for other reasons I can change it.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]