@Contract(threading=STATELESS) public class DefaultHttpRequestRetryStrategy extends Object implements HttpRequestRetryStrategy
HttpRequestRetryStrategy interface.| Modifier and Type | Field and Description |
|---|---|
static DefaultHttpRequestRetryStrategy |
INSTANCE |
| Modifier | Constructor and Description |
|---|---|
|
DefaultHttpRequestRetryStrategy()
Create the HTTP request retry strategy with a max retry count of 1,
default retry interval of 1 second, and using the following list of
non-retriable I/O exception classes:
InterruptedIOException UnknownHostException ConnectException ConnectionClosedException SSLException and retriable HTTP status codes: SC_TOO_MANY_REQUESTS (429) SC_SERVICE_UNAVAILABLE (503) |
|
DefaultHttpRequestRetryStrategy(int maxRetries,
org.apache.hc.core5.util.TimeValue defaultRetryInterval)
Create the HTTP request retry strategy using the following list of
non-retriable I/O exception classes:
InterruptedIOException UnknownHostException ConnectException ConnectionClosedException NoRouteToHostException SSLException and retriable HTTP status codes: SC_TOO_MANY_REQUESTS (429) SC_SERVICE_UNAVAILABLE (503) |
protected |
DefaultHttpRequestRetryStrategy(int maxRetries,
org.apache.hc.core5.util.TimeValue defaultRetryInterval,
Collection<Class<? extends IOException>> clazzes,
Collection<Integer> codes) |
| Modifier and Type | Method and Description |
|---|---|
org.apache.hc.core5.util.TimeValue |
getRetryInterval(org.apache.hc.core5.http.HttpResponse response,
int execCount,
org.apache.hc.core5.http.protocol.HttpContext context)
Determines the retry interval between subsequent retries.
|
protected boolean |
handleAsIdempotent(org.apache.hc.core5.http.HttpRequest request) |
boolean |
retryRequest(org.apache.hc.core5.http.HttpRequest request,
IOException exception,
int execCount,
org.apache.hc.core5.http.protocol.HttpContext context)
Determines if a method should be retried after an I/O exception
occurred during execution.
|
boolean |
retryRequest(org.apache.hc.core5.http.HttpResponse response,
int execCount,
org.apache.hc.core5.http.protocol.HttpContext context)
Determines if a method should be retried given the response from
the target server.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetRetryIntervalpublic static final DefaultHttpRequestRetryStrategy INSTANCE
protected DefaultHttpRequestRetryStrategy(int maxRetries,
org.apache.hc.core5.util.TimeValue defaultRetryInterval,
Collection<Class<? extends IOException>> clazzes,
Collection<Integer> codes)
public DefaultHttpRequestRetryStrategy(int maxRetries,
org.apache.hc.core5.util.TimeValue defaultRetryInterval)
maxRetries - how many times to retry; 0 means no retriesdefaultRetryInterval - the default retry interval between
subsequent retries if the Retry-After header is not set
or invalid.public DefaultHttpRequestRetryStrategy()
public boolean retryRequest(org.apache.hc.core5.http.HttpRequest request,
IOException exception,
int execCount,
org.apache.hc.core5.http.protocol.HttpContext context)
HttpRequestRetryStrategyretryRequest in interface HttpRequestRetryStrategyrequest - the request failed due to an I/O exceptionexception - the exception that occurredexecCount - the number of times this method has been
unsuccessfully executedcontext - the context for the request executiontrue if the request should be retried, false
otherwisepublic boolean retryRequest(org.apache.hc.core5.http.HttpResponse response,
int execCount,
org.apache.hc.core5.http.protocol.HttpContext context)
HttpRequestRetryStrategyretryRequest in interface HttpRequestRetryStrategyresponse - the response from the target serverexecCount - the number of times this method has been
unsuccessfully executedcontext - the context for the request executiontrue if the request should be retried, false
otherwisepublic org.apache.hc.core5.util.TimeValue getRetryInterval(org.apache.hc.core5.http.HttpResponse response,
int execCount,
org.apache.hc.core5.http.protocol.HttpContext context)
HttpRequestRetryStrategygetRetryInterval in interface HttpRequestRetryStrategyresponse - the response from the target serverexecCount - the number of times this method has been
unsuccessfully executedcontext - the context for the request executionprotected boolean handleAsIdempotent(org.apache.hc.core5.http.HttpRequest request)
Copyright © 1999–2021 The Apache Software Foundation. All rights reserved.