com.amazonaws.services.dynamodb
Class AmazonDynamoDBAsyncClient

java.lang.Object
  extended by com.amazonaws.AmazonWebServiceClient
      extended by com.amazonaws.services.dynamodb.AmazonDynamoDBClient
          extended by com.amazonaws.services.dynamodb.AmazonDynamoDBAsyncClient
All Implemented Interfaces:
AmazonDynamoDB, AmazonDynamoDBAsync

public class AmazonDynamoDBAsyncClient
extends AmazonDynamoDBClient
implements AmazonDynamoDBAsync

Asynchronous client for accessing AmazonDynamoDB. All asynchronous calls made using this client are non-blocking. Callers could either process the result and handle the exceptions in the worker thread by providing a callback handler when making the call, or use the returned Future object to check the result of the call in the calling thread.

Amazon DynamoDB is a fast, highly scalable, highly available, cost-effective non-relational database service.

Amazon DynamoDB removes traditional scalability limitations on data storage while maintaining low latency and predictable performance.


Constructor Summary
AmazonDynamoDBAsyncClient()
          Constructs a new asynchronous client to invoke service methods on AmazonDynamoDB.
AmazonDynamoDBAsyncClient(AWSCredentials awsCredentials)
          Constructs a new asynchronous client to invoke service methods on AmazonDynamoDB using the specified AWS account credentials.
AmazonDynamoDBAsyncClient(AWSCredentials awsCredentials, ClientConfiguration clientConfiguration, ExecutorService executorService)
          Constructs a new asynchronous client to invoke service methods on AmazonDynamoDB using the specified AWS account credentials, executor service, and client configuration options.
AmazonDynamoDBAsyncClient(AWSCredentials awsCredentials, ExecutorService executorService)
          Constructs a new asynchronous client to invoke service methods on AmazonDynamoDB using the specified AWS account credentials and executor service.
AmazonDynamoDBAsyncClient(AWSCredentialsProvider awsCredentialsProvider)
          Constructs a new asynchronous client to invoke service methods on AmazonDynamoDB using the specified AWS account credentials provider.
AmazonDynamoDBAsyncClient(AWSCredentialsProvider awsCredentialsProvider, ClientConfiguration clientConfiguration, ExecutorService executorService)
          Constructs a new asynchronous client to invoke service methods on AmazonDynamoDB using the specified AWS account credentials provider, executor service, and client configuration options.
AmazonDynamoDBAsyncClient(AWSCredentialsProvider awsCredentialsProvider, ExecutorService executorService)
          Constructs a new asynchronous client to invoke service methods on AmazonDynamoDB using the specified AWS account credentials provider and executor service.
AmazonDynamoDBAsyncClient(ClientConfiguration clientConfiguration)
          Constructs a new asynchronous client to invoke service methods on AmazonDynamoDB.
 
Method Summary
 Future<BatchGetItemResult> batchGetItemAsync(BatchGetItemRequest batchGetItemRequest)
           Retrieves the attributes for multiple items from multiple tables using their primary keys.
 Future<BatchGetItemResult> batchGetItemAsync(BatchGetItemRequest batchGetItemRequest, AsyncHandler<BatchGetItemRequest,BatchGetItemResult> asyncHandler)
           Retrieves the attributes for multiple items from multiple tables using their primary keys.
 Future<BatchWriteItemResult> batchWriteItemAsync(BatchWriteItemRequest batchWriteItemRequest)
           Allows to execute a batch of Put and/or Delete Requests for many tables in a single call.
 Future<BatchWriteItemResult> batchWriteItemAsync(BatchWriteItemRequest batchWriteItemRequest, AsyncHandler<BatchWriteItemRequest,BatchWriteItemResult> asyncHandler)
           Allows to execute a batch of Put and/or Delete Requests for many tables in a single call.
 Future<CreateTableResult> createTableAsync(CreateTableRequest createTableRequest)
           Adds a new table to your account.
 Future<CreateTableResult> createTableAsync(CreateTableRequest createTableRequest, AsyncHandler<CreateTableRequest,CreateTableResult> asyncHandler)
           Adds a new table to your account.
 Future<DeleteItemResult> deleteItemAsync(DeleteItemRequest deleteItemRequest)
           Deletes a single item in a table by primary key.
 Future<DeleteItemResult> deleteItemAsync(DeleteItemRequest deleteItemRequest, AsyncHandler<DeleteItemRequest,DeleteItemResult> asyncHandler)
           Deletes a single item in a table by primary key.
 Future<DeleteTableResult> deleteTableAsync(DeleteTableRequest deleteTableRequest)
           Deletes a table and all of its items.
 Future<DeleteTableResult> deleteTableAsync(DeleteTableRequest deleteTableRequest, AsyncHandler<DeleteTableRequest,DeleteTableResult> asyncHandler)
           Deletes a table and all of its items.
 Future<DescribeTableResult> describeTableAsync(DescribeTableRequest describeTableRequest)
           Retrieves information about the table, including the current status of the table, the primary key schema and when the table was created.
 Future<DescribeTableResult> describeTableAsync(DescribeTableRequest describeTableRequest, AsyncHandler<DescribeTableRequest,DescribeTableResult> asyncHandler)
           Retrieves information about the table, including the current status of the table, the primary key schema and when the table was created.
 ExecutorService getExecutorService()
          Returns the executor service used by this async client to execute requests.
 Future<GetItemResult> getItemAsync(GetItemRequest getItemRequest)
           Retrieves a set of Attributes for an item that matches the primary key.
 Future<GetItemResult> getItemAsync(GetItemRequest getItemRequest, AsyncHandler<GetItemRequest,GetItemResult> asyncHandler)
           Retrieves a set of Attributes for an item that matches the primary key.
 Future<ListTablesResult> listTablesAsync(ListTablesRequest listTablesRequest)
           Retrieves a paginated list of table names created by the AWS Account of the caller in the AWS Region (e.g.
 Future<ListTablesResult> listTablesAsync(ListTablesRequest listTablesRequest, AsyncHandler<ListTablesRequest,ListTablesResult> asyncHandler)
           Retrieves a paginated list of table names created by the AWS Account of the caller in the AWS Region (e.g.
 Future<PutItemResult> putItemAsync(PutItemRequest putItemRequest)
           Creates a new item, or replaces an old item with a new item (including all the attributes).
 Future<PutItemResult> putItemAsync(PutItemRequest putItemRequest, AsyncHandler<PutItemRequest,PutItemResult> asyncHandler)
           Creates a new item, or replaces an old item with a new item (including all the attributes).
 Future<QueryResult> queryAsync(QueryRequest queryRequest)
           Gets the values of one or more items and its attributes by primary key (composite primary key, only).
 Future<QueryResult> queryAsync(QueryRequest queryRequest, AsyncHandler<QueryRequest,QueryResult> asyncHandler)
           Gets the values of one or more items and its attributes by primary key (composite primary key, only).
 Future<ScanResult> scanAsync(ScanRequest scanRequest)
           Retrieves one or more items and its attributes by performing a full scan of a table.
 Future<ScanResult> scanAsync(ScanRequest scanRequest, AsyncHandler<ScanRequest,ScanResult> asyncHandler)
           Retrieves one or more items and its attributes by performing a full scan of a table.
 void shutdown()
          Shuts down the client, releasing all managed resources.
 Future<UpdateItemResult> updateItemAsync(UpdateItemRequest updateItemRequest)
           Edits an existing item's attributes.
 Future<UpdateItemResult> updateItemAsync(UpdateItemRequest updateItemRequest, AsyncHandler<UpdateItemRequest,UpdateItemResult> asyncHandler)
           Edits an existing item's attributes.
 Future<UpdateTableResult> updateTableAsync(UpdateTableRequest updateTableRequest)
           Updates the provisioned throughput for the given table.
 Future<UpdateTableResult> updateTableAsync(UpdateTableRequest updateTableRequest, AsyncHandler<UpdateTableRequest,UpdateTableResult> asyncHandler)
           Updates the provisioned throughput for the given table.
 
Methods inherited from class com.amazonaws.services.dynamodb.AmazonDynamoDBClient
batchGetItem, batchWriteItem, createTable, deleteItem, deleteTable, describeTable, getCachedResponseMetadata, getItem, listTables, listTables, putItem, query, scan, setEndpoint, updateItem, updateTable
 
Methods inherited from class com.amazonaws.AmazonWebServiceClient
addRequestHandler, removeRequestHandler, setConfiguration, setEndpoint
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.amazonaws.services.dynamodb.AmazonDynamoDB
batchGetItem, batchWriteItem, createTable, deleteItem, deleteTable, describeTable, getCachedResponseMetadata, getItem, listTables, listTables, putItem, query, scan, setEndpoint, updateItem, updateTable
 

Constructor Detail

AmazonDynamoDBAsyncClient

public AmazonDynamoDBAsyncClient()
Constructs a new asynchronous client to invoke service methods on AmazonDynamoDB. A credentials provider chain will be used that searches for credentials in this order:

All service calls made using this new client object are blocking, and will not return until the service call completes.

See Also:
DefaultAWSCredentialsProvider

AmazonDynamoDBAsyncClient

public AmazonDynamoDBAsyncClient(ClientConfiguration clientConfiguration)
Constructs a new asynchronous client to invoke service methods on AmazonDynamoDB. A credentials provider chain will be used that searches for credentials in this order:

All service calls made using this new client object are blocking, and will not return until the service call completes.

Parameters:
clientConfiguration - The client configuration options controlling how this client connects to AmazonDynamoDB (ex: proxy settings, retry counts, etc.).
See Also:
DefaultAWSCredentialsProvider

AmazonDynamoDBAsyncClient

public AmazonDynamoDBAsyncClient(AWSCredentials awsCredentials)
Constructs a new asynchronous client to invoke service methods on AmazonDynamoDB using the specified AWS account credentials. Default client settings will be used, and a default cached thread pool will be created for executing the asynchronous tasks.

All calls made using this new client object are non-blocking, and will immediately return a Java Future object that the caller can later check to see if the service call has actually completed.

Parameters:
awsCredentials - The AWS credentials (access key ID and secret key) to use when authenticating with AWS services.

AmazonDynamoDBAsyncClient

public AmazonDynamoDBAsyncClient(AWSCredentials awsCredentials,
                                 ExecutorService executorService)
Constructs a new asynchronous client to invoke service methods on AmazonDynamoDB using the specified AWS account credentials and executor service. Default client settings will be used.

All calls made using this new client object are non-blocking, and will immediately return a Java Future object that the caller can later check to see if the service call has actually completed.

Parameters:
awsCredentials - The AWS credentials (access key ID and secret key) to use when authenticating with AWS services.
executorService - The executor service by which all asynchronous requests will be executed.

AmazonDynamoDBAsyncClient

public AmazonDynamoDBAsyncClient(AWSCredentials awsCredentials,
                                 ClientConfiguration clientConfiguration,
                                 ExecutorService executorService)
Constructs a new asynchronous client to invoke service methods on AmazonDynamoDB using the specified AWS account credentials, executor service, and client configuration options.

All calls made using this new client object are non-blocking, and will immediately return a Java Future object that the caller can later check to see if the service call has actually completed.

Parameters:
awsCredentials - The AWS credentials (access key ID and secret key) to use when authenticating with AWS services.
clientConfiguration - Client configuration options (ex: max retry limit, proxy settings, etc).
executorService - The executor service by which all asynchronous requests will be executed.

AmazonDynamoDBAsyncClient

public AmazonDynamoDBAsyncClient(AWSCredentialsProvider awsCredentialsProvider)
Constructs a new asynchronous client to invoke service methods on AmazonDynamoDB using the specified AWS account credentials provider. Default client settings will be used, and a default cached thread pool will be created for executing the asynchronous tasks.

All calls made using this new client object are non-blocking, and will immediately return a Java Future object that the caller can later check to see if the service call has actually completed.

Parameters:
awsCredentialsProvider - The AWS credentials provider which will provide credentials to authenticate requests with AWS services.

AmazonDynamoDBAsyncClient

public AmazonDynamoDBAsyncClient(AWSCredentialsProvider awsCredentialsProvider,
                                 ExecutorService executorService)
Constructs a new asynchronous client to invoke service methods on AmazonDynamoDB using the specified AWS account credentials provider and executor service. Default client settings will be used.

All calls made using this new client object are non-blocking, and will immediately return a Java Future object that the caller can later check to see if the service call has actually completed.

Parameters:
awsCredentialsProvider - The AWS credentials provider which will provide credentials to authenticate requests with AWS services.
executorService - The executor service by which all asynchronous requests will be executed.

AmazonDynamoDBAsyncClient

public AmazonDynamoDBAsyncClient(AWSCredentialsProvider awsCredentialsProvider,
                                 ClientConfiguration clientConfiguration,
                                 ExecutorService executorService)
Constructs a new asynchronous client to invoke service methods on AmazonDynamoDB using the specified AWS account credentials provider, executor service, and client configuration options.

All calls made using this new client object are non-blocking, and will immediately return a Java Future object that the caller can later check to see if the service call has actually completed.

Parameters:
awsCredentialsProvider - The AWS credentials provider which will provide credentials to authenticate requests with AWS services.
clientConfiguration - Client configuration options (ex: max retry limit, proxy settings, etc).
executorService - The executor service by which all asynchronous requests will be executed.
Method Detail

getExecutorService

public ExecutorService getExecutorService()
Returns the executor service used by this async client to execute requests.

Returns:
The executor service used by this async client to execute requests.

shutdown

public void shutdown()
Shuts down the client, releasing all managed resources. This includes forcibly terminating all pending asynchronous service calls. Clients who wish to give pending asynchronous service calls time to complete should call getExecutorService().shutdown() prior to calling this method.

Specified by:
shutdown in interface AmazonDynamoDB
Overrides:
shutdown in class AmazonWebServiceClient

listTablesAsync

public Future<ListTablesResult> listTablesAsync(ListTablesRequest listTablesRequest)
                                         throws AmazonServiceException,
                                                AmazonClientException

Retrieves a paginated list of table names created by the AWS Account of the caller in the AWS Region (e.g. us-east-1 ).

Specified by:
listTablesAsync in interface AmazonDynamoDBAsync
Parameters:
listTablesRequest - Container for the necessary parameters to execute the ListTables operation on AmazonDynamoDB.
Returns:
A Java Future object containing the response from the ListTables service method, as returned by AmazonDynamoDB.
Throws:
AmazonClientException - If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
AmazonServiceException - If an error response is returned by AmazonDynamoDB indicating either a problem with the data in the request, or a server side issue.

listTablesAsync

public Future<ListTablesResult> listTablesAsync(ListTablesRequest listTablesRequest,
                                                AsyncHandler<ListTablesRequest,ListTablesResult> asyncHandler)
                                         throws AmazonServiceException,
                                                AmazonClientException

Retrieves a paginated list of table names created by the AWS Account of the caller in the AWS Region (e.g. us-east-1 ).

Specified by:
listTablesAsync in interface AmazonDynamoDBAsync
Parameters:
listTablesRequest - Container for the necessary parameters to execute the ListTables operation on AmazonDynamoDB.
asyncHandler - Asynchronous callback handler for events in the life-cycle of the request. Users could provide the implementation of the four callback methods in this interface to process the operation result or handle the exception.
Returns:
A Java Future object containing the response from the ListTables service method, as returned by AmazonDynamoDB.
Throws:
AmazonClientException - If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
AmazonServiceException - If an error response is returned by AmazonDynamoDB indicating either a problem with the data in the request, or a server side issue.

queryAsync

public Future<QueryResult> queryAsync(QueryRequest queryRequest)
                               throws AmazonServiceException,
                                      AmazonClientException

Gets the values of one or more items and its attributes by primary key (composite primary key, only).

Narrow the scope of the query using comparison operators on the RangeKeyValue of the composite key. Use the ScanIndexForward parameter to get results in forward or reverse order by range key.

Specified by:
queryAsync in interface AmazonDynamoDBAsync
Parameters:
queryRequest - Container for the necessary parameters to execute the Query operation on AmazonDynamoDB.
Returns:
A Java Future object containing the response from the Query service method, as returned by AmazonDynamoDB.
Throws:
AmazonClientException - If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
AmazonServiceException - If an error response is returned by AmazonDynamoDB indicating either a problem with the data in the request, or a server side issue.

queryAsync

public Future<QueryResult> queryAsync(QueryRequest queryRequest,
                                      AsyncHandler<QueryRequest,QueryResult> asyncHandler)
                               throws AmazonServiceException,
                                      AmazonClientException

Gets the values of one or more items and its attributes by primary key (composite primary key, only).

Narrow the scope of the query using comparison operators on the RangeKeyValue of the composite key. Use the ScanIndexForward parameter to get results in forward or reverse order by range key.

Specified by:
queryAsync in interface AmazonDynamoDBAsync
Parameters:
queryRequest - Container for the necessary parameters to execute the Query operation on AmazonDynamoDB.
asyncHandler - Asynchronous callback handler for events in the life-cycle of the request. Users could provide the implementation of the four callback methods in this interface to process the operation result or handle the exception.
Returns:
A Java Future object containing the response from the Query service method, as returned by AmazonDynamoDB.
Throws:
AmazonClientException - If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
AmazonServiceException - If an error response is returned by AmazonDynamoDB indicating either a problem with the data in the request, or a server side issue.

batchWriteItemAsync

public Future<BatchWriteItemResult> batchWriteItemAsync(BatchWriteItemRequest batchWriteItemRequest)
                                                 throws AmazonServiceException,
                                                        AmazonClientException

Allows to execute a batch of Put and/or Delete Requests for many tables in a single call. A total of 25 requests are allowed.

There are no transaction guarantees provided by this API. It does not allow conditional puts nor does it support return values.

Specified by:
batchWriteItemAsync in interface AmazonDynamoDBAsync
Parameters:
batchWriteItemRequest - Container for the necessary parameters to execute the BatchWriteItem operation on AmazonDynamoDB.
Returns:
A Java Future object containing the response from the BatchWriteItem service method, as returned by AmazonDynamoDB.
Throws:
AmazonClientException - If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
AmazonServiceException - If an error response is returned by AmazonDynamoDB indicating either a problem with the data in the request, or a server side issue.

batchWriteItemAsync

public Future<BatchWriteItemResult> batchWriteItemAsync(BatchWriteItemRequest batchWriteItemRequest,
                                                        AsyncHandler<BatchWriteItemRequest,BatchWriteItemResult> asyncHandler)
                                                 throws AmazonServiceException,
                                                        AmazonClientException

Allows to execute a batch of Put and/or Delete Requests for many tables in a single call. A total of 25 requests are allowed.

There are no transaction guarantees provided by this API. It does not allow conditional puts nor does it support return values.

Specified by:
batchWriteItemAsync in interface AmazonDynamoDBAsync
Parameters:
batchWriteItemRequest - Container for the necessary parameters to execute the BatchWriteItem operation on AmazonDynamoDB.
asyncHandler - Asynchronous callback handler for events in the life-cycle of the request. Users could provide the implementation of the four callback methods in this interface to process the operation result or handle the exception.
Returns:
A Java Future object containing the response from the BatchWriteItem service method, as returned by AmazonDynamoDB.
Throws:
AmazonClientException - If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
AmazonServiceException - If an error response is returned by AmazonDynamoDB indicating either a problem with the data in the request, or a server side issue.

updateItemAsync

public Future<UpdateItemResult> updateItemAsync(UpdateItemRequest updateItemRequest)
                                         throws AmazonServiceException,
                                                AmazonClientException

Edits an existing item's attributes.

You can perform a conditional update (insert a new attribute name-value pair if it doesn't exist, or replace an existing name-value pair if it has certain expected attribute values).

Specified by:
updateItemAsync in interface AmazonDynamoDBAsync
Parameters:
updateItemRequest - Container for the necessary parameters to execute the UpdateItem operation on AmazonDynamoDB.
Returns:
A Java Future object containing the response from the UpdateItem service method, as returned by AmazonDynamoDB.
Throws:
AmazonClientException - If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
AmazonServiceException - If an error response is returned by AmazonDynamoDB indicating either a problem with the data in the request, or a server side issue.

updateItemAsync

public Future<UpdateItemResult> updateItemAsync(UpdateItemRequest updateItemRequest,
                                                AsyncHandler<UpdateItemRequest,UpdateItemResult> asyncHandler)
                                         throws AmazonServiceException,
                                                AmazonClientException

Edits an existing item's attributes.

You can perform a conditional update (insert a new attribute name-value pair if it doesn't exist, or replace an existing name-value pair if it has certain expected attribute values).

Specified by:
updateItemAsync in interface AmazonDynamoDBAsync
Parameters:
updateItemRequest - Container for the necessary parameters to execute the UpdateItem operation on AmazonDynamoDB.
asyncHandler - Asynchronous callback handler for events in the life-cycle of the request. Users could provide the implementation of the four callback methods in this interface to process the operation result or handle the exception.
Returns:
A Java Future object containing the response from the UpdateItem service method, as returned by AmazonDynamoDB.
Throws:
AmazonClientException - If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
AmazonServiceException - If an error response is returned by AmazonDynamoDB indicating either a problem with the data in the request, or a server side issue.

putItemAsync

public Future<PutItemResult> putItemAsync(PutItemRequest putItemRequest)
                                   throws AmazonServiceException,
                                          AmazonClientException

Creates a new item, or replaces an old item with a new item (including all the attributes).

If an item already exists in the specified table with the same primary key, the new item completely replaces the existing item. You can perform a conditional put (insert a new item if one with the specified primary key doesn't exist), or replace an existing item if it has certain attribute values.

Specified by:
putItemAsync in interface AmazonDynamoDBAsync
Parameters:
putItemRequest - Container for the necessary parameters to execute the PutItem operation on AmazonDynamoDB.
Returns:
A Java Future object containing the response from the PutItem service method, as returned by AmazonDynamoDB.
Throws:
AmazonClientException - If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
AmazonServiceException - If an error response is returned by AmazonDynamoDB indicating either a problem with the data in the request, or a server side issue.

putItemAsync

public Future<PutItemResult> putItemAsync(PutItemRequest putItemRequest,
                                          AsyncHandler<PutItemRequest,PutItemResult> asyncHandler)
                                   throws AmazonServiceException,
                                          AmazonClientException

Creates a new item, or replaces an old item with a new item (including all the attributes).

If an item already exists in the specified table with the same primary key, the new item completely replaces the existing item. You can perform a conditional put (insert a new item if one with the specified primary key doesn't exist), or replace an existing item if it has certain attribute values.

Specified by:
putItemAsync in interface AmazonDynamoDBAsync
Parameters:
putItemRequest - Container for the necessary parameters to execute the PutItem operation on AmazonDynamoDB.
asyncHandler - Asynchronous callback handler for events in the life-cycle of the request. Users could provide the implementation of the four callback methods in this interface to process the operation result or handle the exception.
Returns:
A Java Future object containing the response from the PutItem service method, as returned by AmazonDynamoDB.
Throws:
AmazonClientException - If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
AmazonServiceException - If an error response is returned by AmazonDynamoDB indicating either a problem with the data in the request, or a server side issue.

describeTableAsync

public Future<DescribeTableResult> describeTableAsync(DescribeTableRequest describeTableRequest)
                                               throws AmazonServiceException,
                                                      AmazonClientException

Retrieves information about the table, including the current status of the table, the primary key schema and when the table was created.

If the table does not exist, Amazon DynamoDB returns a ResourceNotFoundException .

Specified by:
describeTableAsync in interface AmazonDynamoDBAsync
Parameters:
describeTableRequest - Container for the necessary parameters to execute the DescribeTable operation on AmazonDynamoDB.
Returns:
A Java Future object containing the response from the DescribeTable service method, as returned by AmazonDynamoDB.
Throws:
AmazonClientException - If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
AmazonServiceException - If an error response is returned by AmazonDynamoDB indicating either a problem with the data in the request, or a server side issue.

describeTableAsync

public Future<DescribeTableResult> describeTableAsync(DescribeTableRequest describeTableRequest,
                                                      AsyncHandler<DescribeTableRequest,DescribeTableResult> asyncHandler)
                                               throws AmazonServiceException,
                                                      AmazonClientException

Retrieves information about the table, including the current status of the table, the primary key schema and when the table was created.

If the table does not exist, Amazon DynamoDB returns a ResourceNotFoundException .

Specified by:
describeTableAsync in interface AmazonDynamoDBAsync
Parameters:
describeTableRequest - Container for the necessary parameters to execute the DescribeTable operation on AmazonDynamoDB.
asyncHandler - Asynchronous callback handler for events in the life-cycle of the request. Users could provide the implementation of the four callback methods in this interface to process the operation result or handle the exception.
Returns:
A Java Future object containing the response from the DescribeTable service method, as returned by AmazonDynamoDB.
Throws:
AmazonClientException - If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
AmazonServiceException - If an error response is returned by AmazonDynamoDB indicating either a problem with the data in the request, or a server side issue.

scanAsync

public Future<ScanResult> scanAsync(ScanRequest scanRequest)
                             throws AmazonServiceException,
                                    AmazonClientException

Retrieves one or more items and its attributes by performing a full scan of a table.

Provide a ScanFilter to get more specific results.

Specified by:
scanAsync in interface AmazonDynamoDBAsync
Parameters:
scanRequest - Container for the necessary parameters to execute the Scan operation on AmazonDynamoDB.
Returns:
A Java Future object containing the response from the Scan service method, as returned by AmazonDynamoDB.
Throws:
AmazonClientException - If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
AmazonServiceException - If an error response is returned by AmazonDynamoDB indicating either a problem with the data in the request, or a server side issue.

scanAsync

public Future<ScanResult> scanAsync(ScanRequest scanRequest,
                                    AsyncHandler<ScanRequest,ScanResult> asyncHandler)
                             throws AmazonServiceException,
                                    AmazonClientException

Retrieves one or more items and its attributes by performing a full scan of a table.

Provide a ScanFilter to get more specific results.

Specified by:
scanAsync in interface AmazonDynamoDBAsync
Parameters:
scanRequest - Container for the necessary parameters to execute the Scan operation on AmazonDynamoDB.
asyncHandler - Asynchronous callback handler for events in the life-cycle of the request. Users could provide the implementation of the four callback methods in this interface to process the operation result or handle the exception.
Returns:
A Java Future object containing the response from the Scan service method, as returned by AmazonDynamoDB.
Throws:
AmazonClientException - If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
AmazonServiceException - If an error response is returned by AmazonDynamoDB indicating either a problem with the data in the request, or a server side issue.

createTableAsync

public Future<CreateTableResult> createTableAsync(CreateTableRequest createTableRequest)
                                           throws AmazonServiceException,
                                                  AmazonClientException

Adds a new table to your account.

The table name must be unique among those associated with the AWS Account issuing the request, and the AWS Region that receives the request (e.g. us-east-1 ).

The CreateTable operation triggers an asynchronous workflow to begin creating the table. Amazon DynamoDB immediately returns the state of the table ( CREATING ) until the table is in the ACTIVE state. Once the table is in the ACTIVE state, you can perform data plane operations.

Specified by:
createTableAsync in interface AmazonDynamoDBAsync
Parameters:
createTableRequest - Container for the necessary parameters to execute the CreateTable operation on AmazonDynamoDB.
Returns:
A Java Future object containing the response from the CreateTable service method, as returned by AmazonDynamoDB.
Throws:
AmazonClientException - If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
AmazonServiceException - If an error response is returned by AmazonDynamoDB indicating either a problem with the data in the request, or a server side issue.

createTableAsync

public Future<CreateTableResult> createTableAsync(CreateTableRequest createTableRequest,
                                                  AsyncHandler<CreateTableRequest,CreateTableResult> asyncHandler)
                                           throws AmazonServiceException,
                                                  AmazonClientException

Adds a new table to your account.

The table name must be unique among those associated with the AWS Account issuing the request, and the AWS Region that receives the request (e.g. us-east-1 ).

The CreateTable operation triggers an asynchronous workflow to begin creating the table. Amazon DynamoDB immediately returns the state of the table ( CREATING ) until the table is in the ACTIVE state. Once the table is in the ACTIVE state, you can perform data plane operations.

Specified by:
createTableAsync in interface AmazonDynamoDBAsync
Parameters:
createTableRequest - Container for the necessary parameters to execute the CreateTable operation on AmazonDynamoDB.
asyncHandler - Asynchronous callback handler for events in the life-cycle of the request. Users could provide the implementation of the four callback methods in this interface to process the operation result or handle the exception.
Returns:
A Java Future object containing the response from the CreateTable service method, as returned by AmazonDynamoDB.
Throws:
AmazonClientException - If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
AmazonServiceException - If an error response is returned by AmazonDynamoDB indicating either a problem with the data in the request, or a server side issue.

updateTableAsync

public Future<UpdateTableResult> updateTableAsync(UpdateTableRequest updateTableRequest)
                                           throws AmazonServiceException,
                                                  AmazonClientException

Updates the provisioned throughput for the given table.

Setting the throughput for a table helps you manage performance and is part of the Provisioned Throughput feature of Amazon DynamoDB.

Specified by:
updateTableAsync in interface AmazonDynamoDBAsync
Parameters:
updateTableRequest - Container for the necessary parameters to execute the UpdateTable operation on AmazonDynamoDB.
Returns:
A Java Future object containing the response from the UpdateTable service method, as returned by AmazonDynamoDB.
Throws:
AmazonClientException - If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
AmazonServiceException - If an error response is returned by AmazonDynamoDB indicating either a problem with the data in the request, or a server side issue.

updateTableAsync

public Future<UpdateTableResult> updateTableAsync(UpdateTableRequest updateTableRequest,
                                                  AsyncHandler<UpdateTableRequest,UpdateTableResult> asyncHandler)
                                           throws AmazonServiceException,
                                                  AmazonClientException

Updates the provisioned throughput for the given table.

Setting the throughput for a table helps you manage performance and is part of the Provisioned Throughput feature of Amazon DynamoDB.

Specified by:
updateTableAsync in interface AmazonDynamoDBAsync
Parameters:
updateTableRequest - Container for the necessary parameters to execute the UpdateTable operation on AmazonDynamoDB.
asyncHandler - Asynchronous callback handler for events in the life-cycle of the request. Users could provide the implementation of the four callback methods in this interface to process the operation result or handle the exception.
Returns:
A Java Future object containing the response from the UpdateTable service method, as returned by AmazonDynamoDB.
Throws:
AmazonClientException - If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
AmazonServiceException - If an error response is returned by AmazonDynamoDB indicating either a problem with the data in the request, or a server side issue.

deleteTableAsync

public Future<DeleteTableResult> deleteTableAsync(DeleteTableRequest deleteTableRequest)
                                           throws AmazonServiceException,
                                                  AmazonClientException

Deletes a table and all of its items.

If the table is in the ACTIVE state, you can delete it. If a table is in CREATING or UPDATING states then Amazon DynamoDB returns a ResourceInUseException . If the specified table does not exist, Amazon DynamoDB returns a ResourceNotFoundException .

Specified by:
deleteTableAsync in interface AmazonDynamoDBAsync
Parameters:
deleteTableRequest - Container for the necessary parameters to execute the DeleteTable operation on AmazonDynamoDB.
Returns:
A Java Future object containing the response from the DeleteTable service method, as returned by AmazonDynamoDB.
Throws:
AmazonClientException - If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
AmazonServiceException - If an error response is returned by AmazonDynamoDB indicating either a problem with the data in the request, or a server side issue.

deleteTableAsync

public Future<DeleteTableResult> deleteTableAsync(DeleteTableRequest deleteTableRequest,
                                                  AsyncHandler<DeleteTableRequest,DeleteTableResult> asyncHandler)
                                           throws AmazonServiceException,
                                                  AmazonClientException

Deletes a table and all of its items.

If the table is in the ACTIVE state, you can delete it. If a table is in CREATING or UPDATING states then Amazon DynamoDB returns a ResourceInUseException . If the specified table does not exist, Amazon DynamoDB returns a ResourceNotFoundException .

Specified by:
deleteTableAsync in interface AmazonDynamoDBAsync
Parameters:
deleteTableRequest - Container for the necessary parameters to execute the DeleteTable operation on AmazonDynamoDB.
asyncHandler - Asynchronous callback handler for events in the life-cycle of the request. Users could provide the implementation of the four callback methods in this interface to process the operation result or handle the exception.
Returns:
A Java Future object containing the response from the DeleteTable service method, as returned by AmazonDynamoDB.
Throws:
AmazonClientException - If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
AmazonServiceException - If an error response is returned by AmazonDynamoDB indicating either a problem with the data in the request, or a server side issue.

deleteItemAsync

public Future<DeleteItemResult> deleteItemAsync(DeleteItemRequest deleteItemRequest)
                                         throws AmazonServiceException,
                                                AmazonClientException

Deletes a single item in a table by primary key.

You can perform a conditional delete operation that deletes the item if it exists, or if it has an expected attribute value.

Specified by:
deleteItemAsync in interface AmazonDynamoDBAsync
Parameters:
deleteItemRequest - Container for the necessary parameters to execute the DeleteItem operation on AmazonDynamoDB.
Returns:
A Java Future object containing the response from the DeleteItem service method, as returned by AmazonDynamoDB.
Throws:
AmazonClientException - If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
AmazonServiceException - If an error response is returned by AmazonDynamoDB indicating either a problem with the data in the request, or a server side issue.

deleteItemAsync

public Future<DeleteItemResult> deleteItemAsync(DeleteItemRequest deleteItemRequest,
                                                AsyncHandler<DeleteItemRequest,DeleteItemResult> asyncHandler)
                                         throws AmazonServiceException,
                                                AmazonClientException

Deletes a single item in a table by primary key.

You can perform a conditional delete operation that deletes the item if it exists, or if it has an expected attribute value.

Specified by:
deleteItemAsync in interface AmazonDynamoDBAsync
Parameters:
deleteItemRequest - Container for the necessary parameters to execute the DeleteItem operation on AmazonDynamoDB.
asyncHandler - Asynchronous callback handler for events in the life-cycle of the request. Users could provide the implementation of the four callback methods in this interface to process the operation result or handle the exception.
Returns:
A Java Future object containing the response from the DeleteItem service method, as returned by AmazonDynamoDB.
Throws:
AmazonClientException - If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
AmazonServiceException - If an error response is returned by AmazonDynamoDB indicating either a problem with the data in the request, or a server side issue.

getItemAsync

public Future<GetItemResult> getItemAsync(GetItemRequest getItemRequest)
                                   throws AmazonServiceException,
                                          AmazonClientException

Retrieves a set of Attributes for an item that matches the primary key.

The GetItem operation provides an eventually-consistent read by default. If eventually-consistent reads are not acceptable for your application, use ConsistentRead . Although this operation might take longer than a standard read, it always returns the last updated value.

Specified by:
getItemAsync in interface AmazonDynamoDBAsync
Parameters:
getItemRequest - Container for the necessary parameters to execute the GetItem operation on AmazonDynamoDB.
Returns:
A Java Future object containing the response from the GetItem service method, as returned by AmazonDynamoDB.
Throws:
AmazonClientException - If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
AmazonServiceException - If an error response is returned by AmazonDynamoDB indicating either a problem with the data in the request, or a server side issue.

getItemAsync

public Future<GetItemResult> getItemAsync(GetItemRequest getItemRequest,
                                          AsyncHandler<GetItemRequest,GetItemResult> asyncHandler)
                                   throws AmazonServiceException,
                                          AmazonClientException

Retrieves a set of Attributes for an item that matches the primary key.

The GetItem operation provides an eventually-consistent read by default. If eventually-consistent reads are not acceptable for your application, use ConsistentRead . Although this operation might take longer than a standard read, it always returns the last updated value.

Specified by:
getItemAsync in interface AmazonDynamoDBAsync
Parameters:
getItemRequest - Container for the necessary parameters to execute the GetItem operation on AmazonDynamoDB.
asyncHandler - Asynchronous callback handler for events in the life-cycle of the request. Users could provide the implementation of the four callback methods in this interface to process the operation result or handle the exception.
Returns:
A Java Future object containing the response from the GetItem service method, as returned by AmazonDynamoDB.
Throws:
AmazonClientException - If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
AmazonServiceException - If an error response is returned by AmazonDynamoDB indicating either a problem with the data in the request, or a server side issue.

batchGetItemAsync

public Future<BatchGetItemResult> batchGetItemAsync(BatchGetItemRequest batchGetItemRequest)
                                             throws AmazonServiceException,
                                                    AmazonClientException

Retrieves the attributes for multiple items from multiple tables using their primary keys.

The maximum number of item attributes that can be retrieved for a single operation is 100. Also, the number of items retrieved is constrained by a 1 MB the size limit. If the response size limit is exceeded or a partial result is returned due to an internal processing failure, Amazon DynamoDB returns an UnprocessedKeys value so you can retry the operation starting with the next item to get.

Amazon DynamoDB automatically adjusts the number of items returned per page to enforce this limit. For example, even if you ask to retrieve 100 items, but each individual item is 50k in size, the system returns 20 items and an appropriate UnprocessedKeys value so you can get the next page of results. If necessary, your application needs its own logic to assemble the pages of results into one set.

Specified by:
batchGetItemAsync in interface AmazonDynamoDBAsync
Parameters:
batchGetItemRequest - Container for the necessary parameters to execute the BatchGetItem operation on AmazonDynamoDB.
Returns:
A Java Future object containing the response from the BatchGetItem service method, as returned by AmazonDynamoDB.
Throws:
AmazonClientException - If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
AmazonServiceException - If an error response is returned by AmazonDynamoDB indicating either a problem with the data in the request, or a server side issue.

batchGetItemAsync

public Future<BatchGetItemResult> batchGetItemAsync(BatchGetItemRequest batchGetItemRequest,
                                                    AsyncHandler<BatchGetItemRequest,BatchGetItemResult> asyncHandler)
                                             throws AmazonServiceException,
                                                    AmazonClientException

Retrieves the attributes for multiple items from multiple tables using their primary keys.

The maximum number of item attributes that can be retrieved for a single operation is 100. Also, the number of items retrieved is constrained by a 1 MB the size limit. If the response size limit is exceeded or a partial result is returned due to an internal processing failure, Amazon DynamoDB returns an UnprocessedKeys value so you can retry the operation starting with the next item to get.

Amazon DynamoDB automatically adjusts the number of items returned per page to enforce this limit. For example, even if you ask to retrieve 100 items, but each individual item is 50k in size, the system returns 20 items and an appropriate UnprocessedKeys value so you can get the next page of results. If necessary, your application needs its own logic to assemble the pages of results into one set.

Specified by:
batchGetItemAsync in interface AmazonDynamoDBAsync
Parameters:
batchGetItemRequest - Container for the necessary parameters to execute the BatchGetItem operation on AmazonDynamoDB.
asyncHandler - Asynchronous callback handler for events in the life-cycle of the request. Users could provide the implementation of the four callback methods in this interface to process the operation result or handle the exception.
Returns:
A Java Future object containing the response from the BatchGetItem service method, as returned by AmazonDynamoDB.
Throws:
AmazonClientException - If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
AmazonServiceException - If an error response is returned by AmazonDynamoDB indicating either a problem with the data in the request, or a server side issue.


Copyright © 2010 Amazon Web Services, Inc. All Rights Reserved.