com.amazonaws.retry
Class PredefinedRetryPolicies.SDKDefaultRetryCondition
java.lang.Object
com.amazonaws.retry.PredefinedRetryPolicies.SDKDefaultRetryCondition
- All Implemented Interfaces:
- RetryPolicy.RetryCondition
- Enclosing class:
- PredefinedRetryPolicies
public static class PredefinedRetryPolicies.SDKDefaultRetryCondition
- extends java.lang.Object
- implements RetryPolicy.RetryCondition
The default implementation of RetryCondition used by the SDK. User could
extend this class to provide additional custom conditions.
The default implementation checks for various conditions in
the following order:
- Retry on client exceptions caused by IOException;
- Retry on service exceptions that are either 500 internal server
errors, 503 service unavailable errors, service throttling errors or
clock skew errors.
Methods inherited from class java.lang.Object |
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
PredefinedRetryPolicies.SDKDefaultRetryCondition
public PredefinedRetryPolicies.SDKDefaultRetryCondition()
shouldRetry
public boolean shouldRetry(AmazonWebServiceRequest originalRequest,
AmazonClientException exception,
int retriesAttempted)
- Description copied from interface:
RetryPolicy.RetryCondition
- Returns whether a failed request should be retried according to the
given request context. In the following circumstances, the request
will fail directly without consulting this method:
- if it has already reached the max retry limit,
- if the request contains non-repeatable content,
- if any RuntimeException or Error is thrown when executing the request.
- Specified by:
shouldRetry
in interface RetryPolicy.RetryCondition
- Parameters:
originalRequest
- The original request object being executed. For
performance reason, this object is not a defensive copy,
and caller should not attempt to modify its data.exception
- The exception from the failed request, represented as an
AmazonClientException object. There are two types of
exception that will be passed to this method:
- AmazonServiceException (sub-class of
AmazonClientException) indicating a service error
- AmazonClientException caused by an IOException when
executing the HTTP request.
Any other exceptions are regarded as unexpected failures
and are thrown immediately without any retry. For
performance reason, this object is not a defensive copy,
and caller should not attempt to modify its data.retriesAttempted
- The number of times the current request has been
attempted.
- Returns:
- True if the failed request should be retried.
Copyright © 2010 Amazon Web Services, Inc. All Rights Reserved.