Class DefaultAdaptiveRetryStrategy.Builder
java.lang.Object
software.amazon.awssdk.retries.internal.BaseRetryStrategy.Builder
software.amazon.awssdk.retries.internal.DefaultAdaptiveRetryStrategy.Builder
- All Implemented Interfaces:
AdaptiveRetryStrategy.Builder
,RetryStrategy.Builder<AdaptiveRetryStrategy.Builder,
,AdaptiveRetryStrategy> DefaultAwareRetryStrategy.Builder
,Buildable
,SdkBuilder<AdaptiveRetryStrategy.Builder,
AdaptiveRetryStrategy>
- Enclosing class:
DefaultAdaptiveRetryStrategy
public static class DefaultAdaptiveRetryStrategy.Builder
extends BaseRetryStrategy.Builder
implements AdaptiveRetryStrategy.Builder
-
Method Summary
Modifier and TypeMethodDescriptionbackoffStrategy
(BackoffStrategy backoffStrategy) Configure the backoff strategy used by the retry strategy.build()
Build a newRetryStrategy
with the current configuration on this builder.circuitBreakerEnabled
(Boolean circuitBreakerEnabled) maxAttempts
(int maxAttempts) Configure the maximum number of attempts used by the retry strategy.rateLimiterTokenBucketStore
(RateLimiterTokenBucketStore rateLimiterTokenBucketStore) retryOnException
(Predicate<Throwable> shouldRetry) Configure the strategy to retry when the provided predicate returns true, given a failure exception.throttlingBackoffStrategy
(BackoffStrategy backoffStrategy) Configure the backoff strategy used for throttling exceptions by this strategy.tokenBucketExceptionCost
(int exceptionCost) tokenBucketStore
(TokenBucketStore tokenBucketStore) treatAsThrottling
(Predicate<Throwable> treatAsThrottling) Configure the predicate to allow the strategy categorize a Throwable as throttling exception.useClientDefaults
(boolean useClientDefaults) Configure whether the default predicates should be used, or not.Methods inherited from class software.amazon.awssdk.retries.internal.BaseRetryStrategy.Builder
markDefaultAdded
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface software.amazon.awssdk.retries.api.RetryStrategy.Builder
retryOnException, retryOnExceptionInstanceOf, retryOnExceptionOrCause, retryOnExceptionOrCauseInstanceOf, retryOnRootCause, retryOnRootCauseInstanceOf
Methods inherited from interface software.amazon.awssdk.utils.builder.SdkBuilder
applyMutation
-
Method Details
-
retryOnException
Description copied from interface:RetryStrategy.Builder
Configure the strategy to retry when the provided predicate returns true, given a failure exception.- Specified by:
retryOnException
in interfaceRetryStrategy.Builder<AdaptiveRetryStrategy.Builder,
AdaptiveRetryStrategy>
-
maxAttempts
Description copied from interface:RetryStrategy.Builder
Configure the maximum number of attempts used by the retry strategy.The actual number of attempts made may be less, depending on the retry strategy implementation. For example, the standard and adaptive retry modes both employ short-circuiting which reduces the maximum attempts during outages.
The default value for the standard and adaptive retry strategies is 3.
- Specified by:
maxAttempts
in interfaceRetryStrategy.Builder<AdaptiveRetryStrategy.Builder,
AdaptiveRetryStrategy>
-
treatAsThrottling
public DefaultAdaptiveRetryStrategy.Builder treatAsThrottling(Predicate<Throwable> treatAsThrottling) Description copied from interface:AdaptiveRetryStrategy.Builder
Configure the predicate to allow the strategy categorize a Throwable as throttling exception.- Specified by:
treatAsThrottling
in interfaceAdaptiveRetryStrategy.Builder
- Specified by:
treatAsThrottling
in interfaceRetryStrategy.Builder<AdaptiveRetryStrategy.Builder,
AdaptiveRetryStrategy>
-
backoffStrategy
Description copied from interface:RetryStrategy.Builder
Configure the backoff strategy used by the retry strategy.By default, this uses jittered exponential backoff.
- Specified by:
backoffStrategy
in interfaceRetryStrategy.Builder<AdaptiveRetryStrategy.Builder,
AdaptiveRetryStrategy>
-
throttlingBackoffStrategy
public DefaultAdaptiveRetryStrategy.Builder throttlingBackoffStrategy(BackoffStrategy backoffStrategy) Description copied from interface:RetryStrategy.Builder
Configure the backoff strategy used for throttling exceptions by this strategy.By default, this uses jittered exponential backoff.
- Specified by:
throttlingBackoffStrategy
in interfaceRetryStrategy.Builder<AdaptiveRetryStrategy.Builder,
AdaptiveRetryStrategy>
-
circuitBreakerEnabled
-
tokenBucketExceptionCost
-
rateLimiterTokenBucketStore
public DefaultAdaptiveRetryStrategy.Builder rateLimiterTokenBucketStore(RateLimiterTokenBucketStore rateLimiterTokenBucketStore) -
tokenBucketStore
-
useClientDefaults
Description copied from interface:RetryStrategy.Builder
Configure whether the default predicates should be used, or not. When set to false, only user-provided retry predicates will be considered to determine what should be retried or not. Setting this to false and providing no predicate will result in an empty retry strategy.- Specified by:
useClientDefaults
in interfaceRetryStrategy.Builder<AdaptiveRetryStrategy.Builder,
AdaptiveRetryStrategy>
-
build
Description copied from interface:RetryStrategy.Builder
Build a newRetryStrategy
with the current configuration on this builder.- Specified by:
build
in interfaceAdaptiveRetryStrategy.Builder
- Specified by:
build
in interfaceBuildable
- Specified by:
build
in interfaceRetryStrategy.Builder<AdaptiveRetryStrategy.Builder,
AdaptiveRetryStrategy> - Specified by:
build
in interfaceSdkBuilder<AdaptiveRetryStrategy.Builder,
AdaptiveRetryStrategy> - Returns:
- an instance of T
-