This is an automated email from the ASF dual-hosted git repository.

jamesbognar pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/juneau.git


The following commit(s) were added to refs/heads/master by this push:
     new 8244bed  RestClient tests.
8244bed is described below

commit 8244bed0bde37f1cd609a41dfda6710068b1d10a
Author: JamesBognar <[email protected]>
AuthorDate: Sun Jun 28 10:49:02 2020 -0400

    RestClient tests.
---
 .../rest/client2/RestClient_FormData_Test.java     |   6 ++
 .../juneau/rest/client2/RestClient_Query_Test.java |  14 ++-
 .../org/apache/juneau/rest/client2/RestClient.java |  24 ++---
 .../apache/juneau/rest/client2/RestRequest.java    | 104 ++++++++++-----------
 4 files changed, 75 insertions(+), 73 deletions(-)

diff --git 
a/juneau-rest/juneau-rest-client-utest/src/test/java/org/apache/juneau/rest/client2/RestClient_FormData_Test.java
 
b/juneau-rest/juneau-rest-client-utest/src/test/java/org/apache/juneau/rest/client2/RestClient_FormData_Test.java
index 544d171..b4b4c8c 100644
--- 
a/juneau-rest/juneau-rest-client-utest/src/test/java/org/apache/juneau/rest/client2/RestClient_FormData_Test.java
+++ 
b/juneau-rest/juneau-rest-client-utest/src/test/java/org/apache/juneau/rest/client2/RestClient_FormData_Test.java
@@ -14,6 +14,7 @@ package org.apache.juneau.rest.client2;
 
 import static org.apache.juneau.assertions.Assertions.*;
 import static org.apache.juneau.httppart.HttpPartSchema.*;
+import static org.apache.juneau.AddFlag.*;
 
 import java.io.*;
 
@@ -58,6 +59,11 @@ public class RestClient_FormData_Test {
        public void a03_formData_withSchema() throws Exception {
                client().formData("Foo",AList.of("bar","baz"), 
T_ARRAY_PIPES).build().post("/formData").run().assertBody().is("Foo=bar%7Cbaz").assertBody().urlDecodedIs("Foo=bar|baz");
                
client().build().post("/formData").formData("Foo",AList.of("bar","baz"), 
T_ARRAY_PIPES).run().assertBody().is("Foo=bar%7Cbaz").assertBody().urlDecodedIs("Foo=bar|baz");
+
+               client().formData("Foo",AList.of("bar","baz"), 
T_ARRAY_PIPES).build().post("/formData").formData("Foo",AList.of("qux","quux"), 
T_ARRAY_PIPES).run().assertBody().is("Foo=bar%7Cbaz&Foo=qux%7Cquux").assertBody().urlDecodedIs("Foo=bar|baz&Foo=qux|quux");
+               client().formData("Foo",AList.of("bar","baz"), 
T_ARRAY_PIPES).build().post("/formData").formData(APPEND,"Foo",AList.of("qux","quux"),
 
T_ARRAY_PIPES).run().assertBody().is("Foo=bar%7Cbaz&Foo=qux%7Cquux").assertBody().urlDecodedIs("Foo=bar|baz&Foo=qux|quux");
+               client().formData("Foo",AList.of("bar","baz"), 
T_ARRAY_PIPES).build().post("/formData").formData(PREPEND,"Foo",AList.of("qux","quux"),
 
T_ARRAY_PIPES).run().assertBody().is("Foo=qux%7Cquux&Foo=bar%7Cbaz").assertBody().urlDecodedIs("Foo=qux|quux&Foo=bar|baz");
+               client().formData("Foo",AList.of("bar","baz"), 
T_ARRAY_PIPES).build().post("/formData").formData(REPLACE,"Foo",AList.of("qux","quux"),
 
T_ARRAY_PIPES).run().assertBody().is("Foo=qux%7Cquux").assertBody().urlDecodedIs("Foo=qux|quux");
        }
 
        @Test
diff --git 
a/juneau-rest/juneau-rest-client-utest/src/test/java/org/apache/juneau/rest/client2/RestClient_Query_Test.java
 
b/juneau-rest/juneau-rest-client-utest/src/test/java/org/apache/juneau/rest/client2/RestClient_Query_Test.java
index 52e8529..d2ceaf3 100644
--- 
a/juneau-rest/juneau-rest-client-utest/src/test/java/org/apache/juneau/rest/client2/RestClient_Query_Test.java
+++ 
b/juneau-rest/juneau-rest-client-utest/src/test/java/org/apache/juneau/rest/client2/RestClient_Query_Test.java
@@ -14,12 +14,11 @@ package org.apache.juneau.rest.client2;
 
 import static org.apache.juneau.assertions.Assertions.*;
 import static org.apache.juneau.httppart.HttpPartSchema.*;
+import static org.apache.juneau.AddFlag.*;
 
 import java.io.*;
-import java.util.*;
 
 import org.apache.http.*;
-import org.apache.juneau.*;
 import org.apache.juneau.collections.*;
 import org.apache.juneau.http.*;
 import org.apache.juneau.rest.*;
@@ -126,10 +125,17 @@ public class RestClient_Query_Test {
        public void a11_query_request() throws Exception {
                client().build().get("/echo").query("foo", 
"bar").run().assertBody().contains("GET /echo?foo=bar");
                client().build().get("/echo").query("foo", 
AList.of("bar","baz"), T_ARRAY_PIPES).run().assertBody().contains("GET 
/echo?foo=bar%7Cbaz");
-               
client().query("foo","bar").build().get("/echo").query(EnumSet.of(AddFlag.PREPEND),
 "foo", "baz").run().assertBody().contains("GET /echo?foo=baz&foo=bar");
-               
client().query("foo","bar").build().get("/echo").query(EnumSet.of(AddFlag.PREPEND),
 "foo", AList.of("baz","qux"), T_ARRAY_PIPES).run().assertBody().contains("GET 
/echo?foo=baz%7Cqux&foo=bar");
+               client().query("foo","bar").build().get("/echo").query(PREPEND, 
"foo", "baz").run().assertBody().contains("GET /echo?foo=baz&foo=bar");
+               client().query("foo","bar").build().get("/echo").query(PREPEND, 
"foo", AList.of("baz","qux"), T_ARRAY_PIPES).run().assertBody().contains("GET 
/echo?foo=baz%7Cqux&foo=bar");
+               client().query("foo","bar").build().get("/echo").query(PREPEND, 
"foo", "").run().assertBody().contains("GET /echo?foo=&foo=bar");
+               client().query("foo","bar").build().get("/echo").query(PREPEND, 
"foo", null).run().assertBody().contains("GET /echo?foo=bar");
                
client().query("foo","bar").build().get("/echo").queries(pair("foo","baz"), 
pairs("foo","qux"), OMap.of("foo","quux")).run().assertBody().contains("GET 
/echo?foo=bar&foo=baz&foo=qux&foo=quux");
                client().query("foo","bar").build().get("/echo").queries(new 
A11().init()).run().assertBody().contains("GET /echo?foo=bar&foo=baz");
+               client().query("foo","bar").build().get("/echo").query(REPLACE, 
"foo", "baz").run().assertBody().contains("GET /echo?foo=baz");
+               client().query("foo","bar").build().get("/echo").query(REPLACE, 
"foo", null).run().assertBody().contains("GET /echo?");
+               client().query("foo","bar").build().get("/echo").query(REPLACE, 
"foo", "").run().assertBody().contains("GET /echo?foo=");
+               client().query("bar","baz").build().get("/echo").query(REPLACE, 
"foo", "bar").run().assertBody().contains("GET /echo?bar=baz&foo=bar");
+
                
assertThrown(()->{client().build().get("/echo").queries("foo=baz");}).is("Invalid
 type passed to queries(): java.lang.String");
        }
 
diff --git 
a/juneau-rest/juneau-rest-client/src/main/java/org/apache/juneau/rest/client2/RestClient.java
 
b/juneau-rest/juneau-rest-client/src/main/java/org/apache/juneau/rest/client2/RestClient.java
index 0b0a81f..7616709 100644
--- 
a/juneau-rest/juneau-rest-client/src/main/java/org/apache/juneau/rest/client2/RestClient.java
+++ 
b/juneau-rest/juneau-rest-client/src/main/java/org/apache/juneau/rest/client2/RestClient.java
@@ -320,11 +320,11 @@ import org.apache.http.client.CookieStore;
  *     <li class='jc'>{@link RestRequest}
  *     <ul>
  *             <li class='jm'>{@link RestRequest#header(String,Object) 
header(String,Object)}
- *             <li class='jm'>{@link RestRequest#header(EnumSet,String,Object) 
header(EnumSet&gt;AddFlag&gt;,String,Object)}
+ *             <li class='jm'>{@link RestRequest#header(AddFlag,String,Object) 
header(EnumSet&gt;AddFlag&gt;,String,Object)}
  *             <li class='jm'>{@link RestRequest#header(Header) header(Header)}
  *             <li class='jm'>{@link RestRequest#header(NameValuePair) 
header(NameValuePair)}
  *             <li class='jm'>{@link RestRequest#headers(Object...) 
headers(Object...)}
- *             <li class='jm'>{@link RestRequest#headers(EnumSet,Object...) 
headers(EnumSet&gt;AddFlag&gt;Object...)}
+ *             <li class='jm'>{@link RestRequest#headers(AddFlag,Object...) 
headers(EnumSet&gt;AddFlag&gt;Object...)}
  *             <li class='jm'>{@link RestRequest#headerPairs(Object...) 
headers(Object...)}
  *             <li class='jm'>{@link RestRequest#accept(Object) accept(Object)}
  *             <li class='jm'>{@link RestRequest#acceptCharset(Object) 
acceptCharset(Object)}
@@ -410,9 +410,9 @@ import org.apache.http.client.CookieStore;
  *     <li class='jc'>{@link RestRequest}
  *     <ul>
  *             <li class='jm'>{@link RestRequest#query(String,Object) 
query(String,Object)}
- *             <li class='jm'>{@link RestRequest#query(EnumSet,String,Object) 
query(EnumSet&lt;AddFlag&gt;,String,Object)}
+ *             <li class='jm'>{@link RestRequest#query(AddFlag,String,Object) 
query(EnumSet&lt;AddFlag&gt;,String,Object)}
  *             <li class='jm'>{@link RestRequest#queries(Object...) 
queries(Object...)}
- *             <li class='jm'>{@link RestRequest#queries(EnumSet,Object...) 
queries(EnumSet&lt;AddFlag&gt;,Object...)}
+ *             <li class='jm'>{@link RestRequest#queries(AddFlag,Object...) 
queries(EnumSet&lt;AddFlag&gt;,Object...)}
  *             <li class='jm'>{@link RestRequest#queryPairs(Object...) 
queryPairs(Object...)}
  *             <li class='jm'>{@link RestRequest#queryCustom(Object) 
queryCustom(Object)}
  *     </ul>
@@ -449,9 +449,9 @@ import org.apache.http.client.CookieStore;
  *     <li class='jc'>{@link RestRequest}
  *     <ul>
  *             <li class='jm'>{@link RestRequest#formData(String,Object) 
formData(String,Object)}
- *             <li class='jm'>{@link 
RestRequest#formData(EnumSet,String,Object) 
formData(EnumSet&lt;AddFlag&gt;,String,Object)}
+ *             <li class='jm'>{@link 
RestRequest#formData(AddFlag,String,Object) 
formData(EnumSet&lt;AddFlag&gt;,String,Object)}
  *             <li class='jm'>{@link RestRequest#formDatas(Object...) 
formDatas(Object...)}
- *             <li class='jm'>{@link RestRequest#formDatas(EnumSet,Object...) 
formDatas(EnumSet&lt;AddFlag&gt;,Object...)}
+ *             <li class='jm'>{@link RestRequest#formDatas(AddFlag,Object...) 
formDatas(EnumSet&lt;AddFlag&gt;,Object...)}
  *             <li class='jm'>{@link RestRequest#formDataPairs(Object...) 
formDataPairs(Object...)}
  *             <li class='jm'>{@link RestRequest#formDataCustom(Object) 
formDataCustom(Object)}
  *     </ul>
@@ -1165,9 +1165,9 @@ public class RestClient extends BeanContext implements 
HttpClient, Closeable, Re
         *                      <li class='jc'>{@link 
org.apache.juneau.rest.client2.RestRequest}
         *                      <ul>
         *                              <li class='jm'>{@link 
org.apache.juneau.rest.client2.RestRequest#formData(String,Object) 
formData(String,Object)}
-        *                              <li class='jm'>{@link 
org.apache.juneau.rest.client2.RestRequest#formData(EnumSet,String,Object) 
formData(EnumSet&lt;AddFlag&gt;,String,Object)}
+        *                              <li class='jm'>{@link 
org.apache.juneau.rest.client2.RestRequest#formData(AddFlag,String,Object) 
formData(EnumSet&lt;AddFlag&gt;,String,Object)}
         *                              <li class='jm'>{@link 
org.apache.juneau.rest.client2.RestRequest#formDatas(Object...) 
formDatas(Object...)}
-        *                              <li class='jm'>{@link 
org.apache.juneau.rest.client2.RestRequest#formDatas(EnumSet,Object...) 
formDatas(EnumSet&lt;AddFlag&gt;Object...)}
+        *                              <li class='jm'>{@link 
org.apache.juneau.rest.client2.RestRequest#formDatas(AddFlag,Object...) 
formDatas(EnumSet&lt;AddFlag&gt;Object...)}
         *                              <li class='jm'>{@link 
org.apache.juneau.rest.client2.RestRequest#formDataPairs(Object...) 
formDataPairs(Object...)}
         *                              <li class='jm'>{@link 
org.apache.juneau.rest.client2.RestRequest#formDataCustom(Object) 
formDataCustom(Object)}
         *                      </ul>
@@ -1234,11 +1234,11 @@ public class RestClient extends BeanContext implements 
HttpClient, Closeable, Re
         *                      <li class='jc'>{@link 
org.apache.juneau.rest.client2.RestRequest}
         *                      <ul>
         *                              <li class='jm'>{@link 
org.apache.juneau.rest.client2.RestRequest#header(String,Object) 
header(String,Object)}
-        *                              <li class='jm'>{@link 
org.apache.juneau.rest.client2.RestRequest#header(EnumSet,String,Object) 
header(EnumSet&gt;AddFlag&gt;,String,Object)}
+        *                              <li class='jm'>{@link 
org.apache.juneau.rest.client2.RestRequest#header(AddFlag,String,Object) 
header(EnumSet&gt;AddFlag&gt;,String,Object)}
         *                              <li class='jm'>{@link 
org.apache.juneau.rest.client2.RestRequest#header(Header) header(Header)}
         *                              <li class='jm'>{@link 
org.apache.juneau.rest.client2.RestRequest#header(NameValuePair) 
header(NameValuePair)}
         *                              <li class='jm'>{@link 
org.apache.juneau.rest.client2.RestRequest#headers(Object...) 
headers(Object...)}
-        *                              <li class='jm'>{@link 
org.apache.juneau.rest.client2.RestRequest#headers(EnumSet,Object...) 
headers(EnumSet&gt;AddFlag&gt;,Object...)}
+        *                              <li class='jm'>{@link 
org.apache.juneau.rest.client2.RestRequest#headers(AddFlag,Object...) 
headers(EnumSet&gt;AddFlag&gt;,Object...)}
         *                              <li class='jm'>{@link 
org.apache.juneau.rest.client2.RestRequest#headerPairs(Object...) 
headerPairs(Object...)}
         *                              <li class='jm'>{@link 
org.apache.juneau.rest.client2.RestRequest#accept(Object) accept(Object)}
         *                              <li class='jm'>{@link 
org.apache.juneau.rest.client2.RestRequest#acceptCharset(Object) 
acceptCharset(Object)}
@@ -1768,9 +1768,9 @@ public class RestClient extends BeanContext implements 
HttpClient, Closeable, Re
         *                      <li class='jc'>{@link 
org.apache.juneau.rest.client2.RestRequest}
         *                      <ul>
         *                              <li class='jm'>{@link 
org.apache.juneau.rest.client2.RestRequest#query(String,Object) 
query(String,Object)}
-        *                              <li class='jm'>{@link 
org.apache.juneau.rest.client2.RestRequest#query(EnumSet,String,Object) 
query(EnumSet&lt;AddFlag&gt;,String,Object)}
+        *                              <li class='jm'>{@link 
org.apache.juneau.rest.client2.RestRequest#query(AddFlag,String,Object) 
query(EnumSet&lt;AddFlag&gt;,String,Object)}
         *                              <li class='jm'>{@link 
org.apache.juneau.rest.client2.RestRequest#queries(Object...) 
queries(Object...)}
-        *                              <li class='jm'>{@link 
org.apache.juneau.rest.client2.RestRequest#queries(EnumSet,Object...) 
queries(EnumSet&lt;AddFlag&gt;,Object...)}
+        *                              <li class='jm'>{@link 
org.apache.juneau.rest.client2.RestRequest#queries(AddFlag,Object...) 
queries(EnumSet&lt;AddFlag&gt;,Object...)}
         *                              <li class='jm'>{@link 
org.apache.juneau.rest.client2.RestRequest#queryPairs(Object...) 
queryPairs(Object...)}
         *                              <li class='jm'>{@link 
org.apache.juneau.rest.client2.RestRequest#queryCustom(Object) 
queryCustom(Object)}
         *                      </ul>
diff --git 
a/juneau-rest/juneau-rest-client/src/main/java/org/apache/juneau/rest/client2/RestRequest.java
 
b/juneau-rest/juneau-rest-client/src/main/java/org/apache/juneau/rest/client2/RestRequest.java
index 162a5ff..2299fd4 100644
--- 
a/juneau-rest/juneau-rest-client/src/main/java/org/apache/juneau/rest/client2/RestRequest.java
+++ 
b/juneau-rest/juneau-rest-client/src/main/java/org/apache/juneau/rest/client2/RestRequest.java
@@ -1074,19 +1074,18 @@ public class RestRequest extends BeanSession implements 
HttpUriRequest, Configur
         *      client
         *              .get(<jsf>URL</jsf>)
         *              .query(
-        *                      
EnumSet.<jsm>of</jsm>(<jsf>APPEND</jsf>,<jsf>SKIP_IF_EMPTY</jsf>),
+        *                      <jsf>APPEND</jsf>,
         *                      <js>"foo"</js>, 
AList.<jsm>of</jsm>(<js>"bar"</js>,<js>"baz"</js>),
         *                      HttpPartSchema.<jsf>T_ARRAY_PIPES</jsf>
         *              )
         *              .run();
         * </p>
         *
-        * @param flags Instructions on how to add this parameter.
+        * @param flag How to add this parameter.
         *      <ul>
         *              <li>{@link AddFlag#APPEND APPEND} (default) - Append to 
end.
         *              <li>{@link AddFlag#PREPEND PREPEND} - Prepend to 
beginning.
         *              <li>{@link AddFlag#REPLACE REPLACE} - Delete any 
existing with same name and append to end.
-        *              <li>{@link AddFlag#SKIP_IF_EMPTY} - Don't add if value 
is an empty string.
         *      </ul>
         * @param name The parameter name.
         * @param value The parameter value.
@@ -1102,8 +1101,8 @@ public class RestRequest extends BeanSession implements 
HttpUriRequest, Configur
         * @return This object (for method chaining).
         * @throws RestCallException Invalid input.
         */
-       public RestRequest query(EnumSet<AddFlag> flags, String name, Object 
value, HttpPartSchema schema) throws RestCallException {
-               return queries(flags, serializedNameValuePair(name, value, 
QUERY, partSerializer, schema, null));
+       public RestRequest query(AddFlag flag, String name, Object value, 
HttpPartSchema schema) throws RestCallException {
+               return queries(flag, serializedNameValuePair(name, value, 
QUERY, partSerializer, schema, EnumSet.of(flag)));
        }
 
        /**
@@ -1192,18 +1191,17 @@ public class RestRequest extends BeanSession implements 
HttpUriRequest, Configur
         *      client
         *              .get(<jsf>URL</jsf>)
         *              .query(
-        *                      
EnumSet.<jsm>of</jsm>(<jsf>APPEND</jsf>,<jsf>SKIP_IF_EMPTY</jsf>),
+        *                      <jsf>APPEND</jsf>,
         *                      <js>"foo"</js>, <js>"bar"</js>
         *              )
         *              .run();
         * </p>
         *
-        * @param flags Instructions on how to add this parameter.
+        * @param flag How to add this parameter.
         *      <ul>
         *              <li>{@link AddFlag#APPEND APPEND} (default) - Append to 
end.
         *              <li>{@link AddFlag#PREPEND PREPEND} - Prepend to 
beginning.
         *              <li>{@link AddFlag#REPLACE REPLACE} - Delete any 
existing with same name and append to end.
-        *              <li>{@link AddFlag#SKIP_IF_EMPTY} - Don't add if value 
is an empty string.
         *      </ul>
         * @param name The parameter name.
         * @param value The parameter value.
@@ -1214,8 +1212,8 @@ public class RestRequest extends BeanSession implements 
HttpUriRequest, Configur
         * @return This object (for method chaining).
         * @throws RestCallException Invalid input.
         */
-       public RestRequest query(EnumSet<AddFlag> flags, String name, Object 
value) throws RestCallException {
-               return queries(flags, serializedNameValuePair(name, value, 
QUERY, partSerializer, null, null));
+       public RestRequest query(AddFlag flag, String name, Object value) 
throws RestCallException {
+               return queries(flag, serializedNameValuePair(name, value, 
QUERY, partSerializer, null, EnumSet.of(flag)));
        }
 
        /**
@@ -1253,7 +1251,7 @@ public class RestRequest extends BeanSession implements 
HttpUriRequest, Configur
         * @throws RestCallException Invalid input.
         */
        public RestRequest queries(Object...params) throws RestCallException {
-               return queries(DEFAULT_FLAGS, params);
+               return queries(APPEND, params);
        }
 
        /**
@@ -1265,19 +1263,18 @@ public class RestRequest extends BeanSession implements 
HttpUriRequest, Configur
         *      client
         *              .get(<jsf>URL</jsf>)
         *              .queries(
-        *                      
EnumSet.<jsm>of</jsm>(<jsf>APPEND</jsf>,<jsf>SKIP_IF_EMPTY</jsf>),
+        *                      <jsf>APPEND</jsf>,
         *                      
BasicNameValuePair.<jsm>of</jsm>(<js>"foo"</js>,<js>"bar"</js>),
         *                      
AMap.<jsm>of</jsm>(<js>"baz"<j/s>,<js>"qux"</js>)
         *              )
         *              .run();
         * </p>
         *
-        * @param flags Instructions on how to add this parameter.
+        * @param flag How to add this parameter.
         *      <ul>
         *              <li>{@link AddFlag#APPEND APPEND} (default) - Append to 
end.
         *              <li>{@link AddFlag#PREPEND PREPEND} - Prepend to 
beginning.
         *              <li>{@link AddFlag#REPLACE REPLACE} - Delete any 
existing with same name and append to end.
-        *              <li>{@link AddFlag#SKIP_IF_EMPTY} - Don't add if value 
is an empty string.
         *      </ul>
         * @param params
         *      The parameters to set.
@@ -1298,7 +1295,7 @@ public class RestRequest extends BeanSession implements 
HttpUriRequest, Configur
         * @return This object (for method chaining).
         * @throws RestCallException Invalid input.
         */
-       public RestRequest queries(EnumSet<AddFlag> flags, Object...params) 
throws RestCallException {
+       public RestRequest queries(AddFlag flag, Object...params) throws 
RestCallException {
                List<NameValuePair> l = new ArrayList<>();
                for (Object o : params) {
                        if (BasicNameValuePair.canCast(o)) {
@@ -1311,15 +1308,15 @@ public class RestRequest extends BeanSession implements 
HttpUriRequest, Configur
                                        
l.add(BasicNameValuePair.cast(Array.get(o, i)));
                        } else if (o instanceof Map) {
                                for (Map.Entry<Object,Object> e : 
toMap(o).entrySet())
-                                       
l.add(serializedNameValuePair(e.getKey(), e.getValue(), QUERY, partSerializer, 
null, null));
+                                       
l.add(serializedNameValuePair(e.getKey(), e.getValue(), QUERY, partSerializer, 
null, EnumSet.of(flag)));
                        } else if (isBean(o)) {
                                for (Map.Entry<String,Object> e : 
toBeanMap(o).entrySet())
-                                       
l.add(serializedNameValuePair(e.getKey(), e.getValue(), QUERY, partSerializer, 
null, null));
+                                       
l.add(serializedNameValuePair(e.getKey(), e.getValue(), QUERY, partSerializer, 
null, EnumSet.of(flag)));
                        } else if (o != null) {
                                throw new RestCallException("Invalid type 
passed to queries(): " + className(o));
                        }
                }
-               return innerQuery(flags, l);
+               return innerQuery(EnumSet.of(flag), l);
        }
 
        /**
@@ -1425,7 +1422,7 @@ public class RestRequest extends BeanSession implements 
HttpUriRequest, Configur
 
        private RestRequest innerQuery(EnumSet<AddFlag> flags, 
List<NameValuePair> params) {
                flags = AddFlag.orDefault(flags);
-               params.removeIf(x -> x == null || x.getValue() == null);
+               params.removeIf(x -> x.getValue() == null);
                if (flags.contains(REPLACE)) {
                        List<NameValuePair> l = uriBuilder.getQueryParams();
                        for (NameValuePair p : params)
@@ -1463,18 +1460,17 @@ public class RestRequest extends BeanSession implements 
HttpUriRequest, Configur
         *      client
         *              .formPost(<jsf>URL</jsf>)
         *              .formData(
-        *                      
EnumSet.<jsm>of</jsm>(<jsf>APPEND</jsf>,<jsf>SKIP_IF_EMPTY</jsf>),
+        *                      <jsf>APPEND</jsf>,
         *                      <js>"foo"</js>, 
AList.<jsm>of</jsm>(<js>"bar"</js>,<js>"baz"</js>),
         *                      HttpPartSchema.<jsf>T_ARRAY_PIPES</jsf>
         *              .run();
         * </p>
         *
-        * @param flags Instructions on how to add this parameter.
+        * @param flag How to add this parameter.
         *      <ul>
         *              <li>{@link AddFlag#APPEND APPEND} (default) - Append to 
end.
         *              <li>{@link AddFlag#PREPEND PREPEND} - Prepend to 
beginning.
         *              <li>{@link AddFlag#REPLACE REPLACE} - Delete any 
existing with same name and append to end.
-        *              <li>{@link AddFlag#SKIP_IF_EMPTY} - Don't add if value 
is an empty string.
         *      </ul>
         * @param name The parameter name.
         * @param value The parameter value.
@@ -1490,8 +1486,8 @@ public class RestRequest extends BeanSession implements 
HttpUriRequest, Configur
         * @return This object (for method chaining).
         * @throws RestCallException Invalid input.
         */
-       public RestRequest formData(EnumSet<AddFlag> flags, String name, Object 
value, HttpPartSchema schema) throws RestCallException {
-               return formDatas(flags, serializedNameValuePair(name, value, 
FORMDATA, partSerializer, schema, flags));
+       public RestRequest formData(AddFlag flag, String name, Object value, 
HttpPartSchema schema) throws RestCallException {
+               return formDatas(flag, serializedNameValuePair(name, value, 
FORMDATA, partSerializer, schema, EnumSet.of(flag)));
        }
 
        /**
@@ -1580,19 +1576,17 @@ public class RestRequest extends BeanSession implements 
HttpUriRequest, Configur
         *      client
         *              .formPost(<jsf>URL</jsf>)
         *              .formData(
-        *                      
EnumSet.<jsm>of</jsm>(<jsf>APPEND</jsf>,<jsf>SKIP_IF_EMPTY</jsf>),
+        *                      <jsf>APPEND</jsf>,
         *                      <js>"foo"</js>, <js>"bar"</js>
         *              )
         *              .run();
         * </p>
         *
-        * @param flags
-        *      Instructions on how to add this parameter.
+        * @param flag How to add this parameter.
         *      <ul>
         *              <li>{@link AddFlag#APPEND APPEND} (default) - Append to 
end.
         *              <li>{@link AddFlag#PREPEND PREPEND} - Prepend to 
beginning.
         *              <li>{@link AddFlag#REPLACE REPLACE} - Delete any 
existing with same name and append to end.
-        *              <li>{@link AddFlag#SKIP_IF_EMPTY} - Don't add if value 
is an empty string.
         *      </ul>
         * @param name The parameter name.
         * @param value The parameter value.
@@ -1603,8 +1597,8 @@ public class RestRequest extends BeanSession implements 
HttpUriRequest, Configur
         * @return This object (for method chaining).
         * @throws RestCallException Invalid input.
         */
-       public RestRequest formData(EnumSet<AddFlag> flags, String name, Object 
value) throws RestCallException {
-               return formDatas(flags, serializedNameValuePair(name, value, 
FORMDATA, partSerializer, null, flags));
+       public RestRequest formData(AddFlag flag, String name, Object value) 
throws RestCallException {
+               return formDatas(flag, serializedNameValuePair(name, value, 
FORMDATA, partSerializer, null, EnumSet.of(flag)));
        }
 
        /**
@@ -1642,7 +1636,7 @@ public class RestRequest extends BeanSession implements 
HttpUriRequest, Configur
         * @throws RestCallException Invalid input.
         */
        public RestRequest formDatas(Object...params) throws RestCallException {
-               return formDatas(DEFAULT_FLAGS, params);
+               return formDatas(APPEND, params);
        }
 
        /**
@@ -1654,19 +1648,18 @@ public class RestRequest extends BeanSession implements 
HttpUriRequest, Configur
         *      client
         *              .formPost(<jsf>URL</jsf>)
         *              .formDatas(
-        *                      
EnumSet.<jsm>of</jsm>(<jsf>APPEND</jsf>,<jsf>SKIP_IF_EMPTY</jsf>),
+        *                      <jsf>APPEND</jsf>,
         *                      
BasicNameValuePair.<jsm>of</jsm>(<js>"foo"</js>,<js>"bar"</js>),
         *                      
AMap.<jsm>of</jsm>(<js>"baz"<j/s>,<js>"qux"</js>)
         *              )
         *              .run();
         * </p>
         *
-        * @param flags Instructions on how to add this parameter.
+        * @param flag How to add this parameter.
         *      <ul>
         *              <li>{@link AddFlag#APPEND APPEND} (default) - Append to 
end.
         *              <li>{@link AddFlag#PREPEND PREPEND} - Prepend to 
beginning.
         *              <li>{@link AddFlag#REPLACE REPLACE} - Delete any 
existing with same name and append to end.
-        *              <li>{@link AddFlag#SKIP_IF_EMPTY} - Don't add if value 
is an empty string.
         *      </ul>
         * @param params
         *      The parameters to set.
@@ -1687,7 +1680,7 @@ public class RestRequest extends BeanSession implements 
HttpUriRequest, Configur
         * @return This object (for method chaining).
         * @throws RestCallException Invalid input.
         */
-       public RestRequest formDatas(EnumSet<AddFlag> flags, Object...params) 
throws RestCallException {
+       public RestRequest formDatas(AddFlag flag, Object...params) throws 
RestCallException {
                List<NameValuePair> l = new ArrayList<>();
                for (Object o : params) {
                        if (BasicNameValuePair.canCast(o)) {
@@ -1700,15 +1693,15 @@ public class RestRequest extends BeanSession implements 
HttpUriRequest, Configur
                                        
l.add(BasicNameValuePair.cast(Array.get(o, i)));
                        } else if (o instanceof Map) {
                                for (Map.Entry<Object,Object> e : 
toMap(o).entrySet())
-                                       
l.add(serializedNameValuePair(e.getKey(), e.getValue(), FORMDATA, 
partSerializer, null, flags));
+                                       
l.add(serializedNameValuePair(e.getKey(), e.getValue(), FORMDATA, 
partSerializer, null, EnumSet.of(flag)));
                        } else if (isBean(o)) {
                                for (Map.Entry<String,Object> e : 
toBeanMap(o).entrySet())
-                                       
l.add(serializedNameValuePair(e.getKey(), e.getValue(), FORMDATA, 
partSerializer, null, flags));
+                                       
l.add(serializedNameValuePair(e.getKey(), e.getValue(), FORMDATA, 
partSerializer, null, EnumSet.of(flag)));
                        } else if (o != null) {
                                throw new RestCallException("Invalid type 
passed to formDatas(): " + className(o));
                        }
                }
-               return innerFormData(flags, l);
+               return innerFormData(EnumSet.of(flag), l);
        }
 
        /**
@@ -1972,19 +1965,18 @@ public class RestRequest extends BeanSession implements 
HttpUriRequest, Configur
         *      client
         *              .get(<jsf>URL</jsf>)
         *              .header(
-        *                      
EnumSet.<jsm>of</jsm>(<jsf>APPEND</jsf>,<jsf>SKIP_IF_EMPTY</jsf>),
+        *                      <jsf>APPEND</jsf>,
         *                      <js>"Foo"</js>, 
AList.<jsm>of</jsm>(<js>"bar"</js>,<js>"baz"</js>)),
         *                      HttpPartSchema.<jsf>T_ARRAY_PIPES</jsf>
         *              )
         *              .run();
         * </p>
         *
-        * @param flags Instructions on how to add this parameter.
+        * @param flag How to add this parameter.
         *      <ul>
         *              <li>{@link AddFlag#APPEND APPEND} (default) - Append to 
end.
         *              <li>{@link AddFlag#PREPEND PREPEND} - Prepend to 
beginning.
         *              <li>{@link AddFlag#REPLACE REPLACE} - Delete any 
existing with same name and append to end.
-        *              <li>{@link AddFlag#SKIP_IF_EMPTY} - Don't add if value 
is an empty string.
         *      </ul>
         * @param name The header name.
         * @param value The header value.
@@ -2000,8 +1992,8 @@ public class RestRequest extends BeanSession implements 
HttpUriRequest, Configur
         * @return This object (for method chaining).
         * @throws RestCallException Invalid input.
         */
-       public RestRequest header(EnumSet<AddFlag> flags, String name, Object 
value, HttpPartSchema schema) throws RestCallException {
-               return headers(flags, serializedHeader(name, value, 
partSerializer, schema, flags));
+       public RestRequest header(AddFlag flag, String name, Object value, 
HttpPartSchema schema) throws RestCallException {
+               return headers(flag, serializedHeader(name, value, 
partSerializer, schema, EnumSet.of(flag)));
        }
 
        /**
@@ -2070,18 +2062,17 @@ public class RestRequest extends BeanSession implements 
HttpUriRequest, Configur
         *      client
         *              .get(<jsf>URL</jsf>)
         *              .header(
-        *                      
EnumSet.<jsm>of</jsm>(<jsf>APPEND</jsf>,<jsf>SKIP_IF_EMPTY</jsf>),
+        *                      <jsf>APPEND</jsf>,
         *                      <js>"Foo"</js>, <js>"bar"</js>
         *              )
         *              .run();
         * </p>
         *
-        * @param flags Instructions on how to add this parameter.
+        * @param flag How to add this parameter.
         *      <ul>
         *              <li>{@link AddFlag#APPEND APPEND} (default) - Append to 
end.
         *              <li>{@link AddFlag#PREPEND PREPEND} - Prepend to 
beginning.
         *              <li>{@link AddFlag#REPLACE REPLACE} - Delete any 
existing with same name and append to end.
-        *              <li>{@link AddFlag#SKIP_IF_EMPTY} - Don't add if value 
is an empty string.
         *      </ul>
         * @param name The header name.
         * @param value The header value.
@@ -2092,8 +2083,8 @@ public class RestRequest extends BeanSession implements 
HttpUriRequest, Configur
         * @return This object (for method chaining).
         * @throws RestCallException Invalid input.
         */
-       public RestRequest header(EnumSet<AddFlag> flags, String name, Object 
value) throws RestCallException {
-               return headers(flags, serializedHeader(name, value, 
partSerializer, null, flags));
+       public RestRequest header(AddFlag flag, String name, Object value) 
throws RestCallException {
+               return headers(flag, serializedHeader(name, value, 
partSerializer, null, EnumSet.of(flag)));
        }
 
        /**
@@ -2173,7 +2164,7 @@ public class RestRequest extends BeanSession implements 
HttpUriRequest, Configur
         * @throws RestCallException Invalid input.
         */
        public RestRequest headers(Object...headers) throws RestCallException {
-               return headers(DEFAULT_FLAGS, headers);
+               return headers(APPEND, headers);
        }
 
        /**
@@ -2185,19 +2176,18 @@ public class RestRequest extends BeanSession implements 
HttpUriRequest, Configur
         *      client
         *              .get(<jsf>URL</jsf>)
         *              .headers(
-        *                      
EnumSet.<jsm>of</jsm>(<jsf>APPEND</jsf>,<jsf>SKIP_IF_EMPTY</jsf>),
+        *                      <jsf>APPEND</jsf>,
         *                      BasicHeader.<jsm>of</jsm>(<js>"Foo"</js>, 
<js>"bar"</js>),
         *                      AMap.<jsm>of</jsm>(<js>"Baz"</js>, 
<js>"qux"</js>)
         *              )
         *              .run();
         * </p>
         *
-        * @param flags Instructions on how to add this parameter.
+        * @param flag How to add this parameter.
         *      <ul>
         *              <li>{@link AddFlag#APPEND APPEND} (default) - Append to 
end.
         *              <li>{@link AddFlag#PREPEND PREPEND} - Prepend to 
beginning.
         *              <li>{@link AddFlag#REPLACE REPLACE} - Delete any 
existing with same name and append to end.
-        *              <li>{@link AddFlag#SKIP_IF_EMPTY} - Don't add if value 
is an empty string.
         *      </ul>
         * @param headers
         *      The headers to set.
@@ -2220,7 +2210,7 @@ public class RestRequest extends BeanSession implements 
HttpUriRequest, Configur
         * @return This object (for method chaining).
         * @throws RestCallException Invalid input.
         */
-       public RestRequest headers(EnumSet<AddFlag> flags, Object...headers) 
throws RestCallException {
+       public RestRequest headers(AddFlag flag, Object...headers) throws 
RestCallException {
                List<Header> l = new ArrayList<>();
                for (Object o : headers) {
                        if (BasicHeader.canCast(o)) {
@@ -2233,15 +2223,15 @@ public class RestRequest extends BeanSession implements 
HttpUriRequest, Configur
                                        l.add(BasicHeader.cast(Array.get(o, 
i)));
                        } else if (o instanceof Map) {
                                for (Map.Entry<Object,Object> e : 
toMap(o).entrySet())
-                                       l.add(serializedHeader(e.getKey(), 
e.getValue(), partSerializer, null, flags));
+                                       l.add(serializedHeader(e.getKey(), 
e.getValue(), partSerializer, null, EnumSet.of(flag)));
                        } else if (isBean(o)) {
                                for (Map.Entry<String,Object> e : 
toBeanMap(o).entrySet())
-                                       l.add(serializedHeader(e.getKey(), 
e.getValue(), partSerializer, null, flags));
+                                       l.add(serializedHeader(e.getKey(), 
e.getValue(), partSerializer, null, EnumSet.of(flag)));
                        } else if (o != null) {
                                throw new RestCallException("Invalid type 
passed to headers(): " + className(o));
                        }
                }
-               return innerHeaders(flags, l);
+               return innerHeaders(EnumSet.of(flag), l);
        }
 
        /**
@@ -2270,7 +2260,7 @@ public class RestRequest extends BeanSession implements 
HttpUriRequest, Configur
                        throw new RestCallException("Odd number of parameters 
passed into headerPairs()");
                for (int i = 0; i < pairs.length; i+=2)
                        l.add(serializedHeader(pairs[i], pairs[i+1], 
partSerializer, null, null));
-               return innerHeaders(DEFAULT_FLAGS, l);
+               return innerHeaders(EnumSet.of(APPEND), l);
        }
 
        RestRequest headerArg(EnumSet<AddFlag> flags, String name, Object 
value, HttpPartSchema schema, HttpPartSerializerSession serializer) throws 
RestCallException {

Reply via email to