Interface IndexOperation<ItemT,RequestT,ResponseT,ResultT>
-
- Type Parameters:
ItemT
- The modelled object that this table maps records to.RequestT
- The type of the request object for the DynamoDb call in the low levelDynamoDbClient
.ResponseT
- The type of the response object for the DynamoDb call in the low levelDynamoDbClient
.ResultT
- The type of the mapped result object that will be returned by the execution of this operation.
- All Superinterfaces:
CommonOperation<ItemT,RequestT,ResponseT,ResultT>
public interface IndexOperation<ItemT,RequestT,ResponseT,ResultT> extends CommonOperation<ItemT,RequestT,ResponseT,ResultT>
Interface for a single operation that can be executed against a secondary index of a mapped database table. Conceptually an operation maps 1:1 with an actual DynamoDb call.A concrete implementation of this interface should also implement
TableOperation
with the same types if the operation supports being executed against both the primary index and secondary indices.
-
-
Method Summary
All Methods Instance Methods Default Methods Modifier and Type Method Description default ResultT
executeOnSecondaryIndex(TableSchema<ItemT> tableSchema, String tableName, String indexName, DynamoDbEnhancedClientExtension extension, DynamoDbClient dynamoDbClient)
Default implementation of a complete synchronous execution of this operation against a secondary index.default CompletableFuture<ResultT>
executeOnSecondaryIndexAsync(TableSchema<ItemT> tableSchema, String tableName, String indexName, DynamoDbEnhancedClientExtension extension, DynamoDbAsyncClient dynamoDbAsyncClient)
Default implementation of a complete non-blocking asynchronous execution of this operation against a secondary index.-
Methods inherited from interface software.amazon.awssdk.enhanced.dynamodb.internal.operations.CommonOperation
asyncServiceCall, execute, executeAsync, generateRequest, operationName, serviceCall, transformResponse
-
-
-
-
Method Detail
-
executeOnSecondaryIndex
default ResultT executeOnSecondaryIndex(TableSchema<ItemT> tableSchema, String tableName, String indexName, DynamoDbEnhancedClientExtension extension, DynamoDbClient dynamoDbClient)
Default implementation of a complete synchronous execution of this operation against a secondary index. It will construct a context based on the given table name and secondary index name and then call execute() on theCommonOperation
interface to perform the operation.- Parameters:
tableSchema
- ATableSchema
that maps the table to a modelled object.tableName
- The physical name of the table that contains the secondary index to execute the operation against.indexName
- The physical name of the secondary index to execute the operation against.dynamoDbClient
- ADynamoDbClient
to make the call against.extension
- ADynamoDbEnhancedClientExtension
that may modify the request or result of this operation. A null value here will result in no modifications.- Returns:
- A high level result object as specified by the implementation of this operation.
-
executeOnSecondaryIndexAsync
default CompletableFuture<ResultT> executeOnSecondaryIndexAsync(TableSchema<ItemT> tableSchema, String tableName, String indexName, DynamoDbEnhancedClientExtension extension, DynamoDbAsyncClient dynamoDbAsyncClient)
Default implementation of a complete non-blocking asynchronous execution of this operation against a secondary index. It will construct a context based on the given table name and secondary index name and then call executeAsync() on theCommonOperation
interface to perform the operation.- Parameters:
tableSchema
- ATableSchema
that maps the table to a modelled object.tableName
- The physical name of the table that contains the secondary index to execute the operation against.indexName
- The physical name of the secondary index to execute the operation against.dynamoDbAsyncClient
- ADynamoDbAsyncClient
to make the call against.extension
- ADynamoDbEnhancedClientExtension
that may modify the request or result of this operation. A null value here will result in no modifications.- Returns:
- A high level result object as specified by the implementation of this operation.
-
-