Adds utility method to add name value pair for uri builder (#288)
diff --git a/httpcore5/src/main/java/org/apache/hc/core5/net/URIBuilder.java b/httpcore5/src/main/java/org/apache/hc/core5/net/URIBuilder.java
index 894db16..0621db1 100644
--- a/httpcore5/src/main/java/org/apache/hc/core5/net/URIBuilder.java
+++ b/httpcore5/src/main/java/org/apache/hc/core5/net/URIBuilder.java
@@ -685,10 +685,25 @@
* @return this.
*/
public URIBuilder addParameter(final String param, final String value) {
+ return addParameter(new BasicNameValuePair(param, value));
+ }
+
+ /**
+ * Adds parameter to URI query. The parameter name and value are expected to be unescaped
+ * and may contain non ASCII characters.
+ * <p>
+ * Please note query parameters and custom query component are mutually exclusive. This method
+ * will remove custom query if present.
+ * </p>
+ *
+ * @return this.
+ * @since 5.2
+ */
+ public URIBuilder addParameter(final NameValuePair nvp) {
if (this.queryParams == null) {
this.queryParams = new ArrayList<>();
}
- this.queryParams.add(new BasicNameValuePair(param, value));
+ this.queryParams.add(nvp);
this.encodedQuery = null;
this.encodedSchemeSpecificPart = null;
this.query = null;