Class AtomicCounterExtension

  • All Implemented Interfaces:
    DynamoDbEnhancedClientExtension

    public final class AtomicCounterExtension
    extends Object
    implements DynamoDbEnhancedClientExtension
    This extension enables atomic counter attributes to be changed in DynamoDb by creating instructions for modifying an existing value or setting a start value. The extension is loaded by default when you instantiate a DynamoDbEnhancedClient and only needs to be added to the client if you are adding custom extensions to the client.

    To utilize atomic counters, first create a field in your model that will be used to store the counter. This class field should of type Long and you need to tag it as an atomic counter:

    Every time a new update of the record is successfully written to the database, the counter will be updated automatically. By default, the counter starts at 0 and increments by 1 for each update. The tags provide the capability of adjusting the counter start and increment/decrement values such as described in DynamoDbAtomicCounter.

    Example 1: Using a bean based table schema

     {@code