Class RetryPolicy
- java.lang.Object
-
- software.amazon.awssdk.core.retry.RetryPolicy
-
- All Implemented Interfaces:
ToCopyableBuilder<RetryPolicy.Builder,RetryPolicy>
@Immutable public final class RetryPolicy extends Object implements ToCopyableBuilder<RetryPolicy.Builder,RetryPolicy>
Interface for specifying a retry policy to use when evaluating whether or not a request should be retried. Thebuilder()
} can be used to construct a retry policy from SDK provided policies or policies that directly implementBackoffStrategy
and/orRetryCondition
. This is configured on a client viaClientOverrideConfiguration.Builder.retryPolicy(software.amazon.awssdk.core.retry.RetryPolicy)
. When using thebuilder()
the SDK will use default values for fields that are not provided. The default number of retries and condition is based on the currentRetryMode
.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interface
RetryPolicy.Builder
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
additionalRetryConditionsAllowed()
Returns true if service-specific conditions are allowed on this policy (e.g.RetryCondition
aggregateRetryCondition()
Retrieve the retry condition that aggregates theRetryPolicy.Builder.retryCondition(RetryCondition)
,RetryPolicy.Builder.numRetries(Integer)
andRetryPolicy.Builder.retryCapacityCondition(RetryCondition)
configured on the builder.BackoffStrategy
backoffStrategy()
Retrieve theRetryPolicy.Builder.backoffStrategy(BackoffStrategy)
configured on the builder.static RetryPolicy.Builder
builder()
Create aRetryPolicy.Builder
populated with the defaults from theRetryMode.defaultRetryMode()
.static RetryPolicy.Builder
builder(RetryMode retryMode)
Create aRetryPolicy.Builder
populated with the defaults from the providedRetryMode
.static RetryPolicy
defaultRetryPolicy()
Create aRetryPolicy
using theRetryMode.defaultRetryMode()
defaults.boolean
equals(Object o)
static RetryPolicy
forRetryMode(RetryMode retryMode)
Create aRetryPolicy
using the providedRetryMode
defaults.int
hashCode()
Boolean
isFastFailRateLimiting()
When usingRetryMode.ADAPTIVE
retry mode, this controls the client should immediately fail the request when not enough capacity is immediately available from the rate limiter to execute the request, instead of waiting for capacity to be available.static RetryPolicy
none()
Create aRetryPolicy
that will NEVER retry.Integer
numRetries()
Retrieve theRetryPolicy.Builder.numRetries(Integer)
configured on the builder.RetryCondition
retryCondition()
Retrieve theRetryPolicy.Builder.retryCondition(RetryCondition)
configured on the builder.RetryMode
retryMode()
Retrieve theRetryMode
that was used to determine the defaults for this retry policy.BackoffStrategy
throttlingBackoffStrategy()
Retrieve theRetryPolicy.Builder.throttlingBackoffStrategy(BackoffStrategy)
configured on the builder.RetryPolicy.Builder
toBuilder()
String
toString()
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface software.amazon.awssdk.utils.builder.ToCopyableBuilder
copy
-
-
-
-
Method Detail
-
defaultRetryPolicy
public static RetryPolicy defaultRetryPolicy()
Create aRetryPolicy
using theRetryMode.defaultRetryMode()
defaults.
-
forRetryMode
public static RetryPolicy forRetryMode(RetryMode retryMode)
Create aRetryPolicy
using the providedRetryMode
defaults.
-
none
public static RetryPolicy none()
Create aRetryPolicy
that will NEVER retry.
-
builder
public static RetryPolicy.Builder builder()
Create aRetryPolicy.Builder
populated with the defaults from theRetryMode.defaultRetryMode()
.
-
builder
public static RetryPolicy.Builder builder(RetryMode retryMode)
Create aRetryPolicy.Builder
populated with the defaults from the providedRetryMode
.
-
retryMode
public RetryMode retryMode()
Retrieve theRetryMode
that was used to determine the defaults for this retry policy.
-
isFastFailRateLimiting
public Boolean isFastFailRateLimiting()
When usingRetryMode.ADAPTIVE
retry mode, this controls the client should immediately fail the request when not enough capacity is immediately available from the rate limiter to execute the request, instead of waiting for capacity to be available.
-
additionalRetryConditionsAllowed
public boolean additionalRetryConditionsAllowed()
Returns true if service-specific conditions are allowed on this policy (e.g. more conditions may be added by the SDK if they are recommended).
-
aggregateRetryCondition
public RetryCondition aggregateRetryCondition()
Retrieve the retry condition that aggregates theRetryPolicy.Builder.retryCondition(RetryCondition)
,RetryPolicy.Builder.numRetries(Integer)
andRetryPolicy.Builder.retryCapacityCondition(RetryCondition)
configured on the builder.
-
retryCondition
public RetryCondition retryCondition()
Retrieve theRetryPolicy.Builder.retryCondition(RetryCondition)
configured on the builder.
-
backoffStrategy
public BackoffStrategy backoffStrategy()
Retrieve theRetryPolicy.Builder.backoffStrategy(BackoffStrategy)
configured on the builder.
-
throttlingBackoffStrategy
public BackoffStrategy throttlingBackoffStrategy()
Retrieve theRetryPolicy.Builder.throttlingBackoffStrategy(BackoffStrategy)
configured on the builder.
-
numRetries
public Integer numRetries()
Retrieve theRetryPolicy.Builder.numRetries(Integer)
configured on the builder.
-
toBuilder
public RetryPolicy.Builder toBuilder()
- Specified by:
toBuilder
in interfaceToCopyableBuilder<RetryPolicy.Builder,RetryPolicy>
-
-