RequestT
- The type of the request object for the DynamoDb call in the low level DynamoDbClient
.ResponseT
- The type of the response object for the DynamoDb call in the low level DynamoDbClient
.ResultT
- The type of the mapped result object that will be returned by the execution of this operation.public interface PaginatedDatabaseOperation<RequestT,ResponseT,ResultT>
Modifier and Type | Method and Description |
---|---|
Function<RequestT,SdkPublisher<ResponseT>> |
asyncServiceCall(DynamoDbAsyncClient dynamoDbAsyncClient)
Provides a function for making the low level non-blocking asynchronous paginated SDK call to DynamoDb.
|
default SdkIterable<ResultT> |
execute(DynamoDbClient dynamoDbClient,
DynamoDbEnhancedClientExtension extension)
Default implementation of a complete synchronous execution of this operation against a database.
|
default SdkPublisher<ResultT> |
executeAsync(DynamoDbAsyncClient dynamoDbAsyncClient,
DynamoDbEnhancedClientExtension extension)
Default implementation of a complete non-blocking asynchronous execution of this operation against a database.
|
RequestT |
generateRequest(DynamoDbEnhancedClientExtension extension)
This method generates the request that needs to be sent to a low level
DynamoDbClient . |
OperationName |
operationName()
The type, or name, of the operation.
|
Function<RequestT,SdkIterable<ResponseT>> |
serviceCall(DynamoDbClient dynamoDbClient)
Provides a function for making the low level synchronous paginated SDK call to DynamoDb.
|
ResultT |
transformResponse(ResponseT response,
DynamoDbEnhancedClientExtension extension)
Takes the response object returned by the actual DynamoDb call and maps it into a higher level abstracted
result object.
|
RequestT generateRequest(DynamoDbEnhancedClientExtension extension)
DynamoDbClient
.extension
- A DynamoDbEnhancedClientExtension
that may modify the request of this operation. A null value
here will result in no modifications.DynamoDbClient
call to perform the operation.Function<RequestT,SdkIterable<ResponseT>> serviceCall(DynamoDbClient dynamoDbClient)
dynamoDbClient
- A low level DynamoDbClient
to make the call against.Function<RequestT,SdkPublisher<ResponseT>> asyncServiceCall(DynamoDbAsyncClient dynamoDbAsyncClient)
dynamoDbAsyncClient
- A low level DynamoDbAsyncClient
to make the call against.ResultT transformResponse(ResponseT response, DynamoDbEnhancedClientExtension extension)
response
- The response object returned by the DynamoDb call for this operation.extension
- A DynamoDbEnhancedClientExtension
that may modify the result of this operation. A null value
here will result in no modifications.default SdkIterable<ResultT> execute(DynamoDbClient dynamoDbClient, DynamoDbEnhancedClientExtension extension)
SdkIterable
that was returned by the previous step with a transformation that turns each
object returned to a high level result.dynamoDbClient
- A DynamoDbClient
to make the call against.extension
- A DynamoDbEnhancedClientExtension
that may modify the request or result of this operation. A
null value here will result in no modifications.SdkIterable
that will iteratively return pages of high level result objects as specified by
the implementation of this operation.default SdkPublisher<ResultT> executeAsync(DynamoDbAsyncClient dynamoDbAsyncClient, DynamoDbEnhancedClientExtension extension)
CompletableFuture
returned by the SDK in a new one that calls transformResponse() to
convert the response object returned in the previous step to a high level result.dynamoDbAsyncClient
- A DynamoDbAsyncClient
to make the call against.extension
- A DynamoDbEnhancedClientExtension
that may modify the request or result of this operation. A
null value here will result in no modifications.SdkPublisher
that will publish pages of the high level result object as specified by the
implementation of this operation.OperationName operationName()
Copyright © 2021. All rights reserved.