Class DynamoDBMapperConfig.DefaultBatchWriteRetryStrategy
java.lang.Object
com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBMapperConfig.DefaultBatchWriteRetryStrategy
- All Implemented Interfaces:
DynamoDBMapperConfig.BatchWriteRetryStrategy
- Enclosing class:
DynamoDBMapperConfig
public static class DynamoDBMapperConfig.DefaultBatchWriteRetryStrategy
extends Object
implements DynamoDBMapperConfig.BatchWriteRetryStrategy
The default BatchWriteRetryStrategy which always retries on
UnprocessedItem up to a maximum number of times and use exponential
backoff with random scale factor.
-
Constructor Summary
ConstructorsConstructorDescriptionKeep retrying until success, with default backoff.DefaultBatchWriteRetryStrategy
(int maxRetry) -
Method Summary
Modifier and TypeMethodDescriptionlong
getDelayBeforeRetryUnprocessedItems
(Map<String, List<WriteRequest>> unprocessedItems, int retriesAttempted) Returns the delay (in milliseconds) before retrying on UnprocessedItems.int
getMaxRetryOnUnprocessedItems
(Map<String, List<WriteRequest>> batchWriteItemInput) Returns the max number of retries to be performed if the service returns UnprocessedItems in the response.
-
Constructor Details
-
DefaultBatchWriteRetryStrategy
public DefaultBatchWriteRetryStrategy()Keep retrying until success, with default backoff. -
DefaultBatchWriteRetryStrategy
public DefaultBatchWriteRetryStrategy(int maxRetry)
-
-
Method Details
-
getMaxRetryOnUnprocessedItems
Description copied from interface:DynamoDBMapperConfig.BatchWriteRetryStrategy
Returns the max number of retries to be performed if the service returns UnprocessedItems in the response.- Specified by:
getMaxRetryOnUnprocessedItems
in interfaceDynamoDBMapperConfig.BatchWriteRetryStrategy
- Parameters:
batchWriteItemInput
- the one batch of write requests that is being sent to the BatchWriteItem API.- Returns:
- max number of retries to be performed if the service returns UnprocessedItems in the response, or a negative value if you want it to keep retrying until all the UnprocessedItems are fulfilled.
-
getDelayBeforeRetryUnprocessedItems
public long getDelayBeforeRetryUnprocessedItems(Map<String, List<WriteRequest>> unprocessedItems, int retriesAttempted) Description copied from interface:DynamoDBMapperConfig.BatchWriteRetryStrategy
Returns the delay (in milliseconds) before retrying on UnprocessedItems.- Specified by:
getDelayBeforeRetryUnprocessedItems
in interfaceDynamoDBMapperConfig.BatchWriteRetryStrategy
- Parameters:
unprocessedItems
- the UnprocessedItems returned by the service in the last BatchWriteItem callretriesAttempted
- The number of times we have attempted to resend UnprocessedItems.- Returns:
- the delay (in milliseconds) before resending UnprocessedItems.
-