Class DefaultHttpRequestRetryHandler

java.lang.Object
org.apache.http.impl.client.DefaultHttpRequestRetryHandler
All Implemented Interfaces:
HttpRequestRetryHandler
Direct Known Subclasses:
StandardHttpRequestRetryHandler

@Contract(threading=IMMUTABLE) public class DefaultHttpRequestRetryHandler extends Object implements HttpRequestRetryHandler
The default HttpRequestRetryHandler used by request executors.
Since:
4.0
  • Field Details

  • Constructor Details

    • DefaultHttpRequestRetryHandler

      protected DefaultHttpRequestRetryHandler(int retryCount, boolean requestSentRetryEnabled, Collection<Class<? extends IOException>> clazzes)
      Create the request retry handler using the specified IOException classes
      Parameters:
      retryCount - how many times to retry; 0 means no retries
      requestSentRetryEnabled - true if it's OK to retry requests that have been sent
      clazzes - the IOException types that should not be retried
      Since:
      4.3
    • DefaultHttpRequestRetryHandler

      public DefaultHttpRequestRetryHandler(int retryCount, boolean requestSentRetryEnabled)
      Create the request retry handler using the following list of non-retriable IOException classes:
      • InterruptedIOException
      • UnknownHostException
      • ConnectException
      • SSLException
      Parameters:
      retryCount - how many times to retry; 0 means no retries
      requestSentRetryEnabled - true if it's OK to retry non-idempotent requests that have been sent
    • DefaultHttpRequestRetryHandler

      public DefaultHttpRequestRetryHandler()
      Create the request retry handler with a retry count of 3, requestSentRetryEnabled false and using the following list of non-retriable IOException classes:
      • InterruptedIOException
      • UnknownHostException
      • ConnectException
      • SSLException
  • Method Details

    • retryRequest

      public boolean retryRequest(IOException exception, int executionCount, org.apache.http.protocol.HttpContext context)
      Used retryCount and requestSentRetryEnabled to determine if the given method should be retried.
      Specified by:
      retryRequest in interface HttpRequestRetryHandler
      Parameters:
      exception - the exception that occurred
      executionCount - the number of times this method has been unsuccessfully executed
      context - the context for the request execution
      Returns:
      true if the method should be retried, false otherwise
    • isRequestSentRetryEnabled

      public boolean isRequestSentRetryEnabled()
      Returns:
      true if this handler will retry methods that have successfully sent their request, false otherwise
    • getRetryCount

      public int getRetryCount()
      Returns:
      the maximum number of times a method will be retried
    • handleAsIdempotent

      protected boolean handleAsIdempotent(org.apache.http.HttpRequest request)
      Since:
      4.2
    • requestIsAborted

      @Deprecated protected boolean requestIsAborted(org.apache.http.HttpRequest request)
      Deprecated.
      (4.3)
      Since:
      4.2