diff --git a/scm-core/src/main/java/sonia/scm/util/UrlBuilder.java b/scm-core/src/main/java/sonia/scm/util/UrlBuilder.java index 2d9605a2bc..e8ba4dfcf3 100644 --- a/scm-core/src/main/java/sonia/scm/util/UrlBuilder.java +++ b/scm-core/src/main/java/sonia/scm/util/UrlBuilder.java @@ -77,7 +77,7 @@ public class UrlBuilder */ public UrlBuilder append(String part) { - url = HttpUtil.append(url, part); + url = url.concat(part); return this; } @@ -139,11 +139,32 @@ public class UrlBuilder { url = new StringBuilder(url).append(separator).append(name).append( HttpUtil.SEPARATOR_PARAMETER_VALUE).append(value).toString(); + parameterAdded = true; } return this; } + /** + * Method description + * + * + * @param part + * + * @return + */ + public UrlBuilder appendUrlPart(String part) + { + if (parameterAdded) + { + throw new IllegalStateException("parameter added"); + } + + url = HttpUtil.append(url, part); + + return this; + } + /** * Method description * @@ -176,6 +197,9 @@ public class UrlBuilder //~--- fields --------------------------------------------------------------- + /** Field description */ + private boolean parameterAdded = false; + /** Field description */ private String separator;