Interface BackoffStrategy
- All Known Implementing Classes:
 EqualJitterBackoffStrategy,FixedDelayBackoffStrategy,FullJitterBackoffStrategy
- Functional Interface:
 - This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.
 
- 
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intMax permitted retry times. - 
Method Summary
Modifier and TypeMethodDescriptiondefault intcalculateExponentialDelay(int retriesAttempted, Duration baseDelay, Duration maxBackoffTime) Compute the delay before the next retry request.static BackoffStrategystatic BackoffStrategydefaultStrategy(RetryMode retryMode) static BackoffStrategystatic BackoffStrategydefaultThrottlingStrategy(RetryMode retryMode) static BackoffStrategynone() 
- 
Field Details
- 
RETRIES_ATTEMPTED_CEILING
static final int RETRIES_ATTEMPTED_CEILINGMax permitted retry times. To prevent exponentialDelay from overflow, there must be 2 ^ retriesAttempted <= 2 ^ 31 - 1, which means retriesAttempted <= 30, so that is the ceil for retriesAttempted. 
 - 
 - 
Method Details
- 
computeDelayBeforeNextRetry
Compute the delay before the next retry request. This strategy is only consulted when there will be a next retry.- Parameters:
 context- Context about the state of the last request and information about the number of requests made.- Returns:
 - Amount of time in milliseconds to wait before the next attempt. Must be non-negative (can be zero).
 
 - 
calculateExponentialDelay
 - 
defaultStrategy
 - 
defaultStrategy
 - 
defaultThrottlingStrategy
 - 
defaultThrottlingStrategy
 - 
none
 
 -