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 117a0b9 Context API refactoring.
117a0b9 is described below
commit 117a0b987d4c85d92a6755ad9a056832716db2fe
Author: JamesBognar <[email protected]>
AuthorDate: Fri Sep 24 09:38:36 2021 -0400
Context API refactoring.
---
.../org/apache/juneau/rest/client/RestClient.java | 39 +-------------
.../juneau/rest/client/RestClientBuilder.java | 63 +++++++++++-----------
2 files changed, 35 insertions(+), 67 deletions(-)
diff --git
a/juneau-rest/juneau-rest-client/src/main/java/org/apache/juneau/rest/client/RestClient.java
b/juneau-rest/juneau-rest-client/src/main/java/org/apache/juneau/rest/client/RestClient.java
index 2023ce5..a3809f8 100644
---
a/juneau-rest/juneau-rest-client/src/main/java/org/apache/juneau/rest/client/RestClient.java
+++
b/juneau-rest/juneau-rest-client/src/main/java/org/apache/juneau/rest/client/RestClient.java
@@ -1116,38 +1116,6 @@ public class RestClient extends BeanContextable
implements HttpClient, Closeable
public static final String RESTCLIENT_console = PREFIX + "console.o";
/**
- * Configuration property: Error codes predicate.
- *
- * <h5 class='section'>Property:</h5>
- * <ul class='spaced-list'>
- * <li><b>ID:</b> {@link
org.apache.juneau.rest.client.RestClient#RESTCLIENT_errorCodes
RESTCLIENT_errorCodes}
- * <li><b>Name:</b> <js>"RestClient.errorCodes.o"</js>
- * <li><b>Data type:</b> {@link
java.util.function.Predicate}<{@link java.lang.Integer}>
- * <li><b>Default:</b> <code>x -> x>=400</code>
- * <li><b>Methods:</b>
- * <ul>
- * <li class='jm'>{@link
org.apache.juneau.rest.client.RestClientBuilder#errorCodes(Predicate)}
- * <li class='jm'>{@link
org.apache.juneau.rest.client.RestRequest#errorCodes(Predicate)}
- * </ul>
- * </ul>
- *
- * <h5 class='section'>Description:</h5>
- *
- * <p>
- * Defines a predicate to test for error codes.
- *
- * <h5 class='section'>Example:</h5>
- * <p class='bcode w800'>
- * <jc>// Create a client that considers any 300+ responses to be
errors.</jc>
- * RestClient <jv>client</jv> = RestClient
- * .<jsm>create</jsm>()
- * .errorCodes(<jv>x</jv> -> <jv>x</jv> >= 300)
- * .build();
- * </p>
- */
- public static final String RESTCLIENT_errorCodes = PREFIX +
"errorCodes.o";
-
- /**
* Configuration property: Executor service.
*
* <h5 class='section'>Property:</h5>
@@ -1660,9 +1628,6 @@ public class RestClient extends BeanContextable
implements HttpClient, Closeable
}
private static final
- Predicate<Integer> ERROR_CODES_DEFAULT = x -> x<=0 || x>=400;
-
- private static final
BiPredicate<RestRequest,RestResponse>
LOG_REQUESTS_PREDICATE_DEFAULT = (req,res) -> true;
/**
@@ -1681,7 +1646,8 @@ public class RestClient extends BeanContextable
implements HttpClient, Closeable
skipEmptyHeaderData = builder.skipEmptyHeaderData;
skipEmptyQueryData = builder.skipEmptyQueryData;
skipEmptyFormData = builder.skipEmptyFormData;
- rootUri = builder.getRootUri();
+ rootUri = builder.rootUri;
+ errorCodes = builder.errorCodes;
ContextProperties cp =
getContextProperties().copy().apply(getBeanContext().getContextProperties()).build();
@@ -1691,7 +1657,6 @@ public class RestClient extends BeanContextable
implements HttpClient, Closeable
this.connectionManager =
cp.getInstance(RESTCLIENT_connectionManager,
HttpClientConnectionManager.class).orElse(null);
this.keepHttpClientOpen =
cp.getBoolean(RESTCLIENT_keepHttpClientOpen).orElse(false);
- this.errorCodes = cp.getInstance(RESTCLIENT_errorCodes,
Predicate.class).orElse(ERROR_CODES_DEFAULT);
this.executorServiceShutdownOnClose =
cp.getBoolean(RESTCLIENT_executorServiceShutdownOnClose).orElse(false);
this.leakDetection =
cp.getBoolean(RESTCLIENT_leakDetection).orElse(isDebug());
this.ignoreErrors =
cp.getBoolean(RESTCLIENT_ignoreErrors).orElse(false);
diff --git
a/juneau-rest/juneau-rest-client/src/main/java/org/apache/juneau/rest/client/RestClientBuilder.java
b/juneau-rest/juneau-rest-client/src/main/java/org/apache/juneau/rest/client/RestClientBuilder.java
index 308edd5..d0515d1 100644
---
a/juneau-rest/juneau-rest-client/src/main/java/org/apache/juneau/rest/client/RestClientBuilder.java
+++
b/juneau-rest/juneau-rest-client/src/main/java/org/apache/juneau/rest/client/RestClientBuilder.java
@@ -13,6 +13,7 @@
package org.apache.juneau.rest.client;
import static org.apache.juneau.rest.client.RestClient.*;
+import static org.apache.juneau.assertions.Assertions.*;
import static org.apache.juneau.internal.ClassUtils.*;
import static org.apache.juneau.internal.ExceptionUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
@@ -96,9 +97,10 @@ public class RestClientBuilder extends
BeanContextableBuilder {
private HeaderList.Builder headerData;
private PartList.Builder queryData, formData, pathData;
private boolean pooled;
- private String rootUri;
+ String rootUri;
boolean skipEmptyHeaderData, skipEmptyFormData, skipEmptyQueryData;
+ Predicate<Integer> errorCodes = x -> x<=0 || x>=400;
SerializerGroup.Builder serializerGroupBuilder;
ParserGroup.Builder parserGroupBuilder;
@@ -1910,6 +1912,36 @@ public class RestClientBuilder extends
BeanContextableBuilder {
}
//------------------------------------------------------------------------------------------------------------------
+ // errorCodes
+
//------------------------------------------------------------------------------------------------------------------
+
+ /**
+ * Errors codes predicate.
+ *
+ * <p>
+ * Defines a predicate to test for error codes.
+ *
+ * <h5 class='section'>Example:</h5>
+ * <p class='bcode w800'>
+ * <jc>// Create a client that considers any 300+ responses to be
errors.</jc>
+ * RestClient <jv>client</jv> = RestClient
+ * .<jsm>create</jsm>()
+ * .errorCodes(<jv>x</jv> -> <jv>x</jv>>=300)
+ * .build();
+ * </p>
+ *
+ * @param value
+ * The new value for this setting.
+ * <br>The default value is <code>x -> x >= 400</code>.
+ * @return This object (for method chaining).
+ */
+ @FluentSetter
+ public RestClientBuilder errorCodes(Predicate<Integer> value) {
+ errorCodes = assertArgNotNull("value", value);
+ return this;
+ }
+
+
//------------------------------------------------------------------------------------------------------------------
// Logging.
//------------------------------------------------------------------------------------------------------------------
@@ -2246,35 +2278,6 @@ public class RestClientBuilder extends
BeanContextableBuilder {
}
/**
- * <i><l>RestClient</l> configuration property: </i> Errors codes
predicate.
- *
- * <p>
- * Defines a predicate to test for error codes.
- *
- * <h5 class='section'>Example:</h5>
- * <p class='bcode w800'>
- * <jc>// Create a client that considers any 300+ responses to be
errors.</jc>
- * RestClient <jv>client</jv> = RestClient
- * .<jsm>create</jsm>()
- * .errorCodes(<jv>x</jv> -> <jv>x</jv>>=300)
- * .build();
- * </p>
- *
- * <ul class='seealso'>
- * <li class='jf'>{@link RestClient#RESTCLIENT_errorCodes}
- * </ul>
- *
- * @param value
- * The new value for this setting.
- * <br>The default value is <code>x -> x >= 400</code>.
- * @return This object (for method chaining).
- */
- @FluentSetter
- public RestClientBuilder errorCodes(Predicate<Integer> value) {
- return set(RESTCLIENT_errorCodes, value);
- }
-
- /**
* <i><l>RestClient</l> configuration property: </i> Executor
service.
*
* <p>