Class AmazonSimpleDBAsyncClient
- java.lang.Object
-
- com.amazonaws.AmazonWebServiceClient
-
- com.amazonaws.services.simpledb.AmazonSimpleDBClient
-
- com.amazonaws.services.simpledb.AmazonSimpleDBAsyncClient
-
- All Implemented Interfaces:
AmazonSimpleDB
,AmazonSimpleDBAsync
@ThreadSafe public class AmazonSimpleDBAsyncClient extends AmazonSimpleDBClient implements AmazonSimpleDBAsync
Interface for accessing Amazon SimpleDB asynchronously. Each asynchronous method will return a Java Future object representing the asynchronous operation; overloads which accept anAsyncHandler
can be used to receive notification when an asynchronous operation completes.Amazon SimpleDB is a web service providing the core database functions of data indexing and querying in the cloud. By offloading the time and effort associated with building and operating a web-scale database, SimpleDB provides developers the freedom to focus on application development.
A traditional, clustered relational database requires a sizable upfront capital outlay, is complex to design, and often requires extensive and repetitive database administration. Amazon SimpleDB is dramatically simpler, requiring no schema, automatically indexing your data and providing a simple API for storage and access. This approach eliminates the administrative burden of data modeling, index maintenance, and performance tuning. Developers gain access to this functionality within Amazon's proven computing environment, are able to scale instantly, and pay only for what they use.
Visit http://aws.amazon.com/simpledb/ for more information.
-
-
Field Summary
-
Fields inherited from class com.amazonaws.services.simpledb.AmazonSimpleDBClient
configFactory, exceptionUnmarshallers
-
Fields inherited from class com.amazonaws.AmazonWebServiceClient
client, clientConfiguration, endpoint, LOGGING_AWS_REQUEST_METRIC, requestHandler2s, timeOffset
-
-
Constructor Summary
Constructors Constructor Description AmazonSimpleDBAsyncClient()
Constructs a new asynchronous client to invoke service methods on Amazon SimpleDB.AmazonSimpleDBAsyncClient(AWSCredentials awsCredentials)
Constructs a new asynchronous client to invoke service methods on Amazon SimpleDB using the specified AWS account credentials.AmazonSimpleDBAsyncClient(AWSCredentialsProvider awsCredentialsProvider)
Constructs a new asynchronous client to invoke service methods on Amazon SimpleDB using the specified AWS account credentials provider.AmazonSimpleDBAsyncClient(AWSCredentialsProvider awsCredentialsProvider, ClientConfiguration clientConfiguration)
Constructs a new asynchronous client to invoke service methods on Amazon SimpleDB using the provided AWS account credentials provider and client configuration options.AmazonSimpleDBAsyncClient(AWSCredentialsProvider awsCredentialsProvider, ClientConfiguration clientConfiguration, ExecutorService executorService)
Constructs a new asynchronous client to invoke service methods on Amazon SimpleDB using the specified AWS account credentials provider, executor service, and client configuration options.AmazonSimpleDBAsyncClient(AWSCredentialsProvider awsCredentialsProvider, ExecutorService executorService)
Constructs a new asynchronous client to invoke service methods on Amazon SimpleDB using the specified AWS account credentials provider and executor service.AmazonSimpleDBAsyncClient(AWSCredentials awsCredentials, ClientConfiguration clientConfiguration, ExecutorService executorService)
Constructs a new asynchronous client to invoke service methods on Amazon SimpleDB using the specified AWS account credentials, executor service, and client configuration options.AmazonSimpleDBAsyncClient(AWSCredentials awsCredentials, ExecutorService executorService)
Constructs a new asynchronous client to invoke service methods on Amazon SimpleDB using the specified AWS account credentials and executor service.AmazonSimpleDBAsyncClient(ClientConfiguration clientConfiguration)
Constructs a new asynchronous client to invoke service methods on Amazon SimpleDB.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Future<BatchDeleteAttributesResult>
batchDeleteAttributesAsync(BatchDeleteAttributesRequest request)
Performs multiple DeleteAttributes operations in a single call, which reduces round trips and latencies.Future<BatchDeleteAttributesResult>
batchDeleteAttributesAsync(BatchDeleteAttributesRequest request, AsyncHandler<BatchDeleteAttributesRequest,BatchDeleteAttributesResult> asyncHandler)
Performs multiple DeleteAttributes operations in a single call, which reduces round trips and latencies.Future<BatchPutAttributesResult>
batchPutAttributesAsync(BatchPutAttributesRequest request)
TheBatchPutAttributes
operation creates or replaces attributes within one or more items.Future<BatchPutAttributesResult>
batchPutAttributesAsync(BatchPutAttributesRequest request, AsyncHandler<BatchPutAttributesRequest,BatchPutAttributesResult> asyncHandler)
TheBatchPutAttributes
operation creates or replaces attributes within one or more items.Future<CreateDomainResult>
createDomainAsync(CreateDomainRequest request)
TheCreateDomain
operation creates a new domain.Future<CreateDomainResult>
createDomainAsync(CreateDomainRequest request, AsyncHandler<CreateDomainRequest,CreateDomainResult> asyncHandler)
TheCreateDomain
operation creates a new domain.Future<DeleteAttributesResult>
deleteAttributesAsync(DeleteAttributesRequest request)
Deletes one or more attributes associated with an item.Future<DeleteAttributesResult>
deleteAttributesAsync(DeleteAttributesRequest request, AsyncHandler<DeleteAttributesRequest,DeleteAttributesResult> asyncHandler)
Deletes one or more attributes associated with an item.Future<DeleteDomainResult>
deleteDomainAsync(DeleteDomainRequest request)
TheDeleteDomain
operation deletes a domain.Future<DeleteDomainResult>
deleteDomainAsync(DeleteDomainRequest request, AsyncHandler<DeleteDomainRequest,DeleteDomainResult> asyncHandler)
TheDeleteDomain
operation deletes a domain.Future<DomainMetadataResult>
domainMetadataAsync(DomainMetadataRequest request)
Returns information about the domain, including when the domain was created, the number of items and attributes in the domain, and the size of the attribute names and values.Future<DomainMetadataResult>
domainMetadataAsync(DomainMetadataRequest request, AsyncHandler<DomainMetadataRequest,DomainMetadataResult> asyncHandler)
Returns information about the domain, including when the domain was created, the number of items and attributes in the domain, and the size of the attribute names and values.Future<GetAttributesResult>
getAttributesAsync(GetAttributesRequest request)
Returns all of the attributes associated with the specified item.Future<GetAttributesResult>
getAttributesAsync(GetAttributesRequest request, AsyncHandler<GetAttributesRequest,GetAttributesResult> asyncHandler)
Returns all of the attributes associated with the specified item.ExecutorService
getExecutorService()
Returns the executor service used by this client to execute async requests.Future<ListDomainsResult>
listDomainsAsync()
Simplified method form for invoking the ListDomains operation.Future<ListDomainsResult>
listDomainsAsync(AsyncHandler<ListDomainsRequest,ListDomainsResult> asyncHandler)
Simplified method form for invoking the ListDomains operation with an AsyncHandler.Future<ListDomainsResult>
listDomainsAsync(ListDomainsRequest request)
TheListDomains
operation lists all domains associated with the Access Key ID.Future<ListDomainsResult>
listDomainsAsync(ListDomainsRequest request, AsyncHandler<ListDomainsRequest,ListDomainsResult> asyncHandler)
TheListDomains
operation lists all domains associated with the Access Key ID.Future<PutAttributesResult>
putAttributesAsync(PutAttributesRequest request)
The PutAttributes operation creates or replaces attributes in an item.Future<PutAttributesResult>
putAttributesAsync(PutAttributesRequest request, AsyncHandler<PutAttributesRequest,PutAttributesResult> asyncHandler)
The PutAttributes operation creates or replaces attributes in an item.Future<SelectResult>
selectAsync(SelectRequest request)
TheSelect
operation returns a set of attributes forItemNames
that match the select expression.Future<SelectResult>
selectAsync(SelectRequest request, AsyncHandler<SelectRequest,SelectResult> asyncHandler)
TheSelect
operation returns a set of attributes forItemNames
that match the select expression.void
shutdown()
Shuts down the client, releasing all managed resources.-
Methods inherited from class com.amazonaws.services.simpledb.AmazonSimpleDBClient
batchDeleteAttributes, batchPutAttributes, createDomain, deleteAttributes, deleteDomain, domainMetadata, getAttributes, getCachedResponseMetadata, listDomains, listDomains, putAttributes, select
-
Methods inherited from class com.amazonaws.AmazonWebServiceClient
addRequestHandler, addRequestHandler, beforeMarshalling, configureRegion, createExecutionContext, createExecutionContext, createExecutionContext, endClientExecution, endClientExecution, findRequestMetricCollector, getEndpointPrefix, getRequestMetricsCollector, getServiceAbbreviation, getServiceName, getServiceNameIntern, getSigner, getSignerByURI, getSignerRegionOverride, getTimeOffset, isProfilingEnabled, isRequestMetricsEnabled, removeRequestHandler, removeRequestHandler, requestMetricCollector, setEndpoint, setEndpointPrefix, setRegion, setServiceNameIntern, setSignerRegionOverride, setTimeOffset, withEndpoint, withRegion, withRegion, withTimeOffset
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface com.amazonaws.services.simpledb.AmazonSimpleDB
batchDeleteAttributes, batchPutAttributes, createDomain, deleteAttributes, deleteDomain, domainMetadata, getAttributes, listDomains, listDomains, putAttributes, select, setEndpoint, setRegion
-
-
-
-
Constructor Detail
-
AmazonSimpleDBAsyncClient
public AmazonSimpleDBAsyncClient()
Constructs a new asynchronous client to invoke service methods on Amazon SimpleDB. A credentials provider chain will be used that searches for credentials in this order:- Environment Variables - AWS_ACCESS_KEY_ID and AWS_SECRET_KEY
- Java System Properties - aws.accessKeyId and aws.secretKey
- Credential profiles file at the default location (~/.aws/credentials) shared by all AWS SDKs and the AWS CLI
- Instance profile credentials delivered through the Amazon EC2 metadata service
Asynchronous methods are delegated to a fixed-size thread pool containing 50 threads (to match the default maximum number of concurrent connections to the service).
-
AmazonSimpleDBAsyncClient
public AmazonSimpleDBAsyncClient(ClientConfiguration clientConfiguration)
Constructs a new asynchronous client to invoke service methods on Amazon SimpleDB. A credentials provider chain will be used that searches for credentials in this order:- Environment Variables - AWS_ACCESS_KEY_ID and AWS_SECRET_KEY
- Java System Properties - aws.accessKeyId and aws.secretKey
- Credential profiles file at the default location (~/.aws/credentials) shared by all AWS SDKs and the AWS CLI
- Instance profile credentials delivered through the Amazon EC2 metadata service
Asynchronous methods are delegated to a fixed-size thread pool containing a number of threads equal to the maximum number of concurrent connections configured via
ClientConfiguration.getMaxConnections()
.- Parameters:
clientConfiguration
- The client configuration options controlling how this client connects to Amazon SimpleDB (ex: proxy settings, retry counts, etc).- See Also:
DefaultAWSCredentialsProviderChain
,Executors.newFixedThreadPool(int)
-
AmazonSimpleDBAsyncClient
public AmazonSimpleDBAsyncClient(AWSCredentials awsCredentials)
Constructs a new asynchronous client to invoke service methods on Amazon SimpleDB using the specified AWS account credentials.Asynchronous methods are delegated to a fixed-size thread pool containing 50 threads (to match the default maximum number of concurrent connections to the service).
- Parameters:
awsCredentials
- The AWS credentials (access key ID and secret key) to use when authenticating with AWS services.- See Also:
Executors.newFixedThreadPool(int)
-
AmazonSimpleDBAsyncClient
public AmazonSimpleDBAsyncClient(AWSCredentials awsCredentials, ExecutorService executorService)
Constructs a new asynchronous client to invoke service methods on Amazon SimpleDB using the specified AWS account credentials and executor service. Default client settings will be used.- 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.
-
AmazonSimpleDBAsyncClient
public AmazonSimpleDBAsyncClient(AWSCredentials awsCredentials, ClientConfiguration clientConfiguration, ExecutorService executorService)
Constructs a new asynchronous client to invoke service methods on Amazon SimpleDB using the specified AWS account credentials, executor service, and client configuration options.- 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.
-
AmazonSimpleDBAsyncClient
public AmazonSimpleDBAsyncClient(AWSCredentialsProvider awsCredentialsProvider)
Constructs a new asynchronous client to invoke service methods on Amazon SimpleDB using the specified AWS account credentials provider. Default client settings will be used.Asynchronous methods are delegated to a fixed-size thread pool containing 50 threads (to match the default maximum number of concurrent connections to the service).
- Parameters:
awsCredentialsProvider
- The AWS credentials provider which will provide credentials to authenticate requests with AWS services.- See Also:
Executors.newFixedThreadPool(int)
-
AmazonSimpleDBAsyncClient
public AmazonSimpleDBAsyncClient(AWSCredentialsProvider awsCredentialsProvider, ClientConfiguration clientConfiguration)
Constructs a new asynchronous client to invoke service methods on Amazon SimpleDB using the provided AWS account credentials provider and client configuration options.Asynchronous methods are delegated to a fixed-size thread pool containing a number of threads equal to the maximum number of concurrent connections configured via
ClientConfiguration.getMaxConnections()
.- 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).- See Also:
DefaultAWSCredentialsProviderChain
,Executors.newFixedThreadPool(int)
-
AmazonSimpleDBAsyncClient
public AmazonSimpleDBAsyncClient(AWSCredentialsProvider awsCredentialsProvider, ExecutorService executorService)
Constructs a new asynchronous client to invoke service methods on Amazon SimpleDB using the specified AWS account credentials provider and executor service. Default client settings will be used.- 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.
-
AmazonSimpleDBAsyncClient
public AmazonSimpleDBAsyncClient(AWSCredentialsProvider awsCredentialsProvider, ClientConfiguration clientConfiguration, ExecutorService executorService)
Constructs a new asynchronous client to invoke service methods on Amazon SimpleDB using the specified AWS account credentials provider, executor service, and client configuration options.- 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 client to execute async requests.- Returns:
- The executor service used by this client to execute async requests.
-
batchDeleteAttributesAsync
public Future<BatchDeleteAttributesResult> batchDeleteAttributesAsync(BatchDeleteAttributesRequest request)
Description copied from interface:AmazonSimpleDBAsync
Performs multiple DeleteAttributes operations in a single call, which reduces round trips and latencies. This enables Amazon SimpleDB to optimize requests, which generally yields better throughput.
The following limitations are enforced for this operation:
- 1 MB request size
- 25 item limit per BatchDeleteAttributes operation
- Specified by:
batchDeleteAttributesAsync
in interfaceAmazonSimpleDBAsync
- Returns:
- A Java Future containing the result of the BatchDeleteAttributes operation returned by the service.
-
batchDeleteAttributesAsync
public Future<BatchDeleteAttributesResult> batchDeleteAttributesAsync(BatchDeleteAttributesRequest request, AsyncHandler<BatchDeleteAttributesRequest,BatchDeleteAttributesResult> asyncHandler)
Description copied from interface:AmazonSimpleDBAsync
Performs multiple DeleteAttributes operations in a single call, which reduces round trips and latencies. This enables Amazon SimpleDB to optimize requests, which generally yields better throughput.
The following limitations are enforced for this operation:
- 1 MB request size
- 25 item limit per BatchDeleteAttributes operation
- Specified by:
batchDeleteAttributesAsync
in interfaceAmazonSimpleDBAsync
asyncHandler
- Asynchronous callback handler for events in the lifecycle of the request. Users can provide an implementation of the callback methods in this interface to receive notification of successful or unsuccessful completion of the operation.- Returns:
- A Java Future containing the result of the BatchDeleteAttributes operation returned by the service.
-
batchPutAttributesAsync
public Future<BatchPutAttributesResult> batchPutAttributesAsync(BatchPutAttributesRequest request)
Description copied from interface:AmazonSimpleDBAsync
The
BatchPutAttributes
operation creates or replaces attributes within one or more items. By using this operation, the client can perform multiple PutAttribute operation with a single call. This helps yield savings in round trips and latencies, enabling Amazon SimpleDB to optimize requests and generally produce better throughput.The client may specify the item name with the
Item.X.ItemName
parameter. The client may specify new attributes using a combination of theItem.X.Attribute.Y.Name
andItem.X.Attribute.Y.Value
parameters. The client may specify the first attribute for the first item using the parametersItem.0.Attribute.0.Name
andItem.0.Attribute.0.Value
, and for the second attribute for the first item by the parametersItem.0.Attribute.1.Name
andItem.0.Attribute.1.Value
, and so on.Attributes are uniquely identified within an item by their name/value combination. For example, a single item can have the attributes
{ "first_name", "first_value" }
and{ "first_name", "second_value" }
. However, it cannot have two attribute instances where both theItem.X.Attribute.Y.Name
andItem.X.Attribute.Y.Value
are the same.Optionally, the requester can supply the
Replace
parameter for each individual value. Setting this value totrue
will cause the new attribute values to replace the existing attribute values. For example, if an itemI
has the attributes{ 'a', '1' }, { 'b', '2'}
and{ 'b', '3' }
and the requester does a BatchPutAttributes of{'I', 'b', '4' }
with the Replace parameter set to true, the final attributes of the item will be{ 'a', '1' }
and{ 'b', '4' }
, replacing the previous values of the 'b' attribute with the new value.This operation is vulnerable to exceeding the maximum URL size when making a REST request using the HTTP GET method. This operation does not support conditions using Expected.X.Name
,Expected.X.Value
, orExpected.X.Exists
.You can execute multiple
BatchPutAttributes
operations and other operations in parallel. However, large numbers of concurrentBatchPutAttributes
calls can result in Service Unavailable (503) responses.The following limitations are enforced for this operation:
- 256 attribute name-value pairs per item
- 1 MB request size
- 1 billion attributes per domain
- 10 GB of total user data storage per domain
- 25 item limit per
BatchPutAttributes
operation
- Specified by:
batchPutAttributesAsync
in interfaceAmazonSimpleDBAsync
- Returns:
- A Java Future containing the result of the BatchPutAttributes operation returned by the service.
-
batchPutAttributesAsync
public Future<BatchPutAttributesResult> batchPutAttributesAsync(BatchPutAttributesRequest request, AsyncHandler<BatchPutAttributesRequest,BatchPutAttributesResult> asyncHandler)
Description copied from interface:AmazonSimpleDBAsync
The
BatchPutAttributes
operation creates or replaces attributes within one or more items. By using this operation, the client can perform multiple PutAttribute operation with a single call. This helps yield savings in round trips and latencies, enabling Amazon SimpleDB to optimize requests and generally produce better throughput.The client may specify the item name with the
Item.X.ItemName
parameter. The client may specify new attributes using a combination of theItem.X.Attribute.Y.Name
andItem.X.Attribute.Y.Value
parameters. The client may specify the first attribute for the first item using the parametersItem.0.Attribute.0.Name
andItem.0.Attribute.0.Value
, and for the second attribute for the first item by the parametersItem.0.Attribute.1.Name
andItem.0.Attribute.1.Value
, and so on.Attributes are uniquely identified within an item by their name/value combination. For example, a single item can have the attributes
{ "first_name", "first_value" }
and{ "first_name", "second_value" }
. However, it cannot have two attribute instances where both theItem.X.Attribute.Y.Name
andItem.X.Attribute.Y.Value
are the same.Optionally, the requester can supply the
Replace
parameter for each individual value. Setting this value totrue
will cause the new attribute values to replace the existing attribute values. For example, if an itemI
has the attributes{ 'a', '1' }, { 'b', '2'}
and{ 'b', '3' }
and the requester does a BatchPutAttributes of{'I', 'b', '4' }
with the Replace parameter set to true, the final attributes of the item will be{ 'a', '1' }
and{ 'b', '4' }
, replacing the previous values of the 'b' attribute with the new value.This operation is vulnerable to exceeding the maximum URL size when making a REST request using the HTTP GET method. This operation does not support conditions using Expected.X.Name
,Expected.X.Value
, orExpected.X.Exists
.You can execute multiple
BatchPutAttributes
operations and other operations in parallel. However, large numbers of concurrentBatchPutAttributes
calls can result in Service Unavailable (503) responses.The following limitations are enforced for this operation:
- 256 attribute name-value pairs per item
- 1 MB request size
- 1 billion attributes per domain
- 10 GB of total user data storage per domain
- 25 item limit per
BatchPutAttributes
operation
- Specified by:
batchPutAttributesAsync
in interfaceAmazonSimpleDBAsync
asyncHandler
- Asynchronous callback handler for events in the lifecycle of the request. Users can provide an implementation of the callback methods in this interface to receive notification of successful or unsuccessful completion of the operation.- Returns:
- A Java Future containing the result of the BatchPutAttributes operation returned by the service.
-
createDomainAsync
public Future<CreateDomainResult> createDomainAsync(CreateDomainRequest request)
Description copied from interface:AmazonSimpleDBAsync
The
CreateDomain
operation creates a new domain. The domain name should be unique among the domains associated with the Access Key ID provided in the request. TheCreateDomain
operation may take 10 or more seconds to complete.The client can create up to 100 domains per account.
If the client requires additional domains, go to http://aws.amazon.com/contact-us/simpledb-limit-request/.
- Specified by:
createDomainAsync
in interfaceAmazonSimpleDBAsync
- Returns:
- A Java Future containing the result of the CreateDomain operation returned by the service.
-
createDomainAsync
public Future<CreateDomainResult> createDomainAsync(CreateDomainRequest request, AsyncHandler<CreateDomainRequest,CreateDomainResult> asyncHandler)
Description copied from interface:AmazonSimpleDBAsync
The
CreateDomain
operation creates a new domain. The domain name should be unique among the domains associated with the Access Key ID provided in the request. TheCreateDomain
operation may take 10 or more seconds to complete.The client can create up to 100 domains per account.
If the client requires additional domains, go to http://aws.amazon.com/contact-us/simpledb-limit-request/.
- Specified by:
createDomainAsync
in interfaceAmazonSimpleDBAsync
asyncHandler
- Asynchronous callback handler for events in the lifecycle of the request. Users can provide an implementation of the callback methods in this interface to receive notification of successful or unsuccessful completion of the operation.- Returns:
- A Java Future containing the result of the CreateDomain operation returned by the service.
-
deleteAttributesAsync
public Future<DeleteAttributesResult> deleteAttributesAsync(DeleteAttributesRequest request)
Description copied from interface:AmazonSimpleDBAsync
Deletes one or more attributes associated with an item. If all attributes of the item are deleted, the item is deleted.
DeleteAttributes
is an idempotent operation; running it multiple times on the same item or attribute does not result in an error response.Because Amazon SimpleDB makes multiple copies of item data and uses an eventual consistency update model, performing a GetAttributes or Select operation (read) immediately after a
DeleteAttributes
or PutAttributes operation (write) might not return updated item data.- Specified by:
deleteAttributesAsync
in interfaceAmazonSimpleDBAsync
- Returns:
- A Java Future containing the result of the DeleteAttributes operation returned by the service.
-
deleteAttributesAsync
public Future<DeleteAttributesResult> deleteAttributesAsync(DeleteAttributesRequest request, AsyncHandler<DeleteAttributesRequest,DeleteAttributesResult> asyncHandler)
Description copied from interface:AmazonSimpleDBAsync
Deletes one or more attributes associated with an item. If all attributes of the item are deleted, the item is deleted.
DeleteAttributes
is an idempotent operation; running it multiple times on the same item or attribute does not result in an error response.Because Amazon SimpleDB makes multiple copies of item data and uses an eventual consistency update model, performing a GetAttributes or Select operation (read) immediately after a
DeleteAttributes
or PutAttributes operation (write) might not return updated item data.- Specified by:
deleteAttributesAsync
in interfaceAmazonSimpleDBAsync
asyncHandler
- Asynchronous callback handler for events in the lifecycle of the request. Users can provide an implementation of the callback methods in this interface to receive notification of successful or unsuccessful completion of the operation.- Returns:
- A Java Future containing the result of the DeleteAttributes operation returned by the service.
-
deleteDomainAsync
public Future<DeleteDomainResult> deleteDomainAsync(DeleteDomainRequest request)
Description copied from interface:AmazonSimpleDBAsync
The
DeleteDomain
operation deletes a domain. Any items (and their attributes) in the domain are deleted as well. TheDeleteDomain
operation might take 10 or more seconds to complete.- Specified by:
deleteDomainAsync
in interfaceAmazonSimpleDBAsync
- Returns:
- A Java Future containing the result of the DeleteDomain operation returned by the service.
-
deleteDomainAsync
public Future<DeleteDomainResult> deleteDomainAsync(DeleteDomainRequest request, AsyncHandler<DeleteDomainRequest,DeleteDomainResult> asyncHandler)
Description copied from interface:AmazonSimpleDBAsync
The
DeleteDomain
operation deletes a domain. Any items (and their attributes) in the domain are deleted as well. TheDeleteDomain
operation might take 10 or more seconds to complete.- Specified by:
deleteDomainAsync
in interfaceAmazonSimpleDBAsync
asyncHandler
- Asynchronous callback handler for events in the lifecycle of the request. Users can provide an implementation of the callback methods in this interface to receive notification of successful or unsuccessful completion of the operation.- Returns:
- A Java Future containing the result of the DeleteDomain operation returned by the service.
-
domainMetadataAsync
public Future<DomainMetadataResult> domainMetadataAsync(DomainMetadataRequest request)
Description copied from interface:AmazonSimpleDBAsync
Returns information about the domain, including when the domain was created, the number of items and attributes in the domain, and the size of the attribute names and values.
- Specified by:
domainMetadataAsync
in interfaceAmazonSimpleDBAsync
- Returns:
- A Java Future containing the result of the DomainMetadata operation returned by the service.
-
domainMetadataAsync
public Future<DomainMetadataResult> domainMetadataAsync(DomainMetadataRequest request, AsyncHandler<DomainMetadataRequest,DomainMetadataResult> asyncHandler)
Description copied from interface:AmazonSimpleDBAsync
Returns information about the domain, including when the domain was created, the number of items and attributes in the domain, and the size of the attribute names and values.
- Specified by:
domainMetadataAsync
in interfaceAmazonSimpleDBAsync
asyncHandler
- Asynchronous callback handler for events in the lifecycle of the request. Users can provide an implementation of the callback methods in this interface to receive notification of successful or unsuccessful completion of the operation.- Returns:
- A Java Future containing the result of the DomainMetadata operation returned by the service.
-
getAttributesAsync
public Future<GetAttributesResult> getAttributesAsync(GetAttributesRequest request)
Description copied from interface:AmazonSimpleDBAsync
Returns all of the attributes associated with the specified item. Optionally, the attributes returned can be limited to one or more attributes by specifying an attribute name parameter.
If the item does not exist on the replica that was accessed for this operation, an empty set is returned. The system does not return an error as it cannot guarantee the item does not exist on other replicas.
- Specified by:
getAttributesAsync
in interfaceAmazonSimpleDBAsync
- Returns:
- A Java Future containing the result of the GetAttributes operation returned by the service.
-
getAttributesAsync
public Future<GetAttributesResult> getAttributesAsync(GetAttributesRequest request, AsyncHandler<GetAttributesRequest,GetAttributesResult> asyncHandler)
Description copied from interface:AmazonSimpleDBAsync
Returns all of the attributes associated with the specified item. Optionally, the attributes returned can be limited to one or more attributes by specifying an attribute name parameter.
If the item does not exist on the replica that was accessed for this operation, an empty set is returned. The system does not return an error as it cannot guarantee the item does not exist on other replicas.
- Specified by:
getAttributesAsync
in interfaceAmazonSimpleDBAsync
asyncHandler
- Asynchronous callback handler for events in the lifecycle of the request. Users can provide an implementation of the callback methods in this interface to receive notification of successful or unsuccessful completion of the operation.- Returns:
- A Java Future containing the result of the GetAttributes operation returned by the service.
-
listDomainsAsync
public Future<ListDomainsResult> listDomainsAsync(ListDomainsRequest request)
Description copied from interface:AmazonSimpleDBAsync
The
ListDomains
operation lists all domains associated with the Access Key ID. It returns domain names up to the limit set by MaxNumberOfDomains. A NextToken is returned if there are more thanMaxNumberOfDomains
domains. CallingListDomains
successive times with theNextToken
provided by the operation returns up toMaxNumberOfDomains
more domain names with each successive operation call.- Specified by:
listDomainsAsync
in interfaceAmazonSimpleDBAsync
- Returns:
- A Java Future containing the result of the ListDomains operation returned by the service.
-
listDomainsAsync
public Future<ListDomainsResult> listDomainsAsync(ListDomainsRequest request, AsyncHandler<ListDomainsRequest,ListDomainsResult> asyncHandler)
Description copied from interface:AmazonSimpleDBAsync
The
ListDomains
operation lists all domains associated with the Access Key ID. It returns domain names up to the limit set by MaxNumberOfDomains. A NextToken is returned if there are more thanMaxNumberOfDomains
domains. CallingListDomains
successive times with theNextToken
provided by the operation returns up toMaxNumberOfDomains
more domain names with each successive operation call.- Specified by:
listDomainsAsync
in interfaceAmazonSimpleDBAsync
asyncHandler
- Asynchronous callback handler for events in the lifecycle of the request. Users can provide an implementation of the callback methods in this interface to receive notification of successful or unsuccessful completion of the operation.- Returns:
- A Java Future containing the result of the ListDomains operation returned by the service.
-
listDomainsAsync
public Future<ListDomainsResult> listDomainsAsync()
Simplified method form for invoking the ListDomains operation.- Specified by:
listDomainsAsync
in interfaceAmazonSimpleDBAsync
- See Also:
listDomainsAsync(ListDomainsRequest)
-
listDomainsAsync
public Future<ListDomainsResult> listDomainsAsync(AsyncHandler<ListDomainsRequest,ListDomainsResult> asyncHandler)
Simplified method form for invoking the ListDomains operation with an AsyncHandler.- Specified by:
listDomainsAsync
in interfaceAmazonSimpleDBAsync
- See Also:
listDomainsAsync(ListDomainsRequest, com.amazonaws.handlers.AsyncHandler)
-
putAttributesAsync
public Future<PutAttributesResult> putAttributesAsync(PutAttributesRequest request)
Description copied from interface:AmazonSimpleDBAsync
The PutAttributes operation creates or replaces attributes in an item. The client may specify new attributes using a combination of the
Attribute.X.Name
andAttribute.X.Value
parameters. The client specifies the first attribute by the parametersAttribute.0.Name
andAttribute.0.Value
, the second attribute by the parametersAttribute.1.Name
andAttribute.1.Value
, and so on.Attributes are uniquely identified in an item by their name/value combination. For example, a single item can have the attributes
{ "first_name", "first_value" }
and{ "first_name", second_value" }
. However, it cannot have two attribute instances where both theAttribute.X.Name
andAttribute.X.Value
are the same.Optionally, the requestor can supply the
Replace
parameter for each individual attribute. Setting this value totrue
causes the new attribute value to replace the existing attribute value(s). For example, if an item has the attributes{ 'a', '1' }
,{ 'b', '2'}
and{ 'b', '3' }
and the requestor callsPutAttributes
using the attributes{ 'b', '4' }
with theReplace
parameter set to true, the final attributes of the item are changed to{ 'a', '1' }
and{ 'b', '4' }
, which replaces the previous values of the 'b' attribute with the new value.You cannot specify an empty string as an attribute name.
Because Amazon SimpleDB makes multiple copies of client data and uses an eventual consistency update model, an immediate GetAttributes or Select operation (read) immediately after a PutAttributes or DeleteAttributes operation (write) might not return the updated data.
The following limitations are enforced for this operation:
- 256 total attribute name-value pairs per item
- One billion attributes per domain
- 10 GB of total user data storage per domain
- Specified by:
putAttributesAsync
in interfaceAmazonSimpleDBAsync
- Returns:
- A Java Future containing the result of the PutAttributes operation returned by the service.
-
putAttributesAsync
public Future<PutAttributesResult> putAttributesAsync(PutAttributesRequest request, AsyncHandler<PutAttributesRequest,PutAttributesResult> asyncHandler)
Description copied from interface:AmazonSimpleDBAsync
The PutAttributes operation creates or replaces attributes in an item. The client may specify new attributes using a combination of the
Attribute.X.Name
andAttribute.X.Value
parameters. The client specifies the first attribute by the parametersAttribute.0.Name
andAttribute.0.Value
, the second attribute by the parametersAttribute.1.Name
andAttribute.1.Value
, and so on.Attributes are uniquely identified in an item by their name/value combination. For example, a single item can have the attributes
{ "first_name", "first_value" }
and{ "first_name", second_value" }
. However, it cannot have two attribute instances where both theAttribute.X.Name
andAttribute.X.Value
are the same.Optionally, the requestor can supply the
Replace
parameter for each individual attribute. Setting this value totrue
causes the new attribute value to replace the existing attribute value(s). For example, if an item has the attributes{ 'a', '1' }
,{ 'b', '2'}
and{ 'b', '3' }
and the requestor callsPutAttributes
using the attributes{ 'b', '4' }
with theReplace
parameter set to true, the final attributes of the item are changed to{ 'a', '1' }
and{ 'b', '4' }
, which replaces the previous values of the 'b' attribute with the new value.You cannot specify an empty string as an attribute name.
Because Amazon SimpleDB makes multiple copies of client data and uses an eventual consistency update model, an immediate GetAttributes or Select operation (read) immediately after a PutAttributes or DeleteAttributes operation (write) might not return the updated data.
The following limitations are enforced for this operation:
- 256 total attribute name-value pairs per item
- One billion attributes per domain
- 10 GB of total user data storage per domain
- Specified by:
putAttributesAsync
in interfaceAmazonSimpleDBAsync
asyncHandler
- Asynchronous callback handler for events in the lifecycle of the request. Users can provide an implementation of the callback methods in this interface to receive notification of successful or unsuccessful completion of the operation.- Returns:
- A Java Future containing the result of the PutAttributes operation returned by the service.
-
selectAsync
public Future<SelectResult> selectAsync(SelectRequest request)
Description copied from interface:AmazonSimpleDBAsync
The
Select
operation returns a set of attributes forItemNames
that match the select expression.Select
is similar to the standard SQL SELECT statement.The total size of the response cannot exceed 1 MB in total size. Amazon SimpleDB automatically adjusts the number of items returned per page to enforce this limit. For example, if the client asks to retrieve 2500 items, but each individual item is 10 kB in size, the system returns 100 items and an appropriate
NextToken
so the client can access the next page of results.For information on how to construct select expressions, see Using Select to Create Amazon SimpleDB Queries in the Developer Guide.
- Specified by:
selectAsync
in interfaceAmazonSimpleDBAsync
- Returns:
- A Java Future containing the result of the Select operation returned by the service.
-
selectAsync
public Future<SelectResult> selectAsync(SelectRequest request, AsyncHandler<SelectRequest,SelectResult> asyncHandler)
Description copied from interface:AmazonSimpleDBAsync
The
Select
operation returns a set of attributes forItemNames
that match the select expression.Select
is similar to the standard SQL SELECT statement.The total size of the response cannot exceed 1 MB in total size. Amazon SimpleDB automatically adjusts the number of items returned per page to enforce this limit. For example, if the client asks to retrieve 2500 items, but each individual item is 10 kB in size, the system returns 100 items and an appropriate
NextToken
so the client can access the next page of results.For information on how to construct select expressions, see Using Select to Create Amazon SimpleDB Queries in the Developer Guide.
- Specified by:
selectAsync
in interfaceAmazonSimpleDBAsync
asyncHandler
- Asynchronous callback handler for events in the lifecycle of the request. Users can provide an implementation of the callback methods in this interface to receive notification of successful or unsuccessful completion of the operation.- Returns:
- A Java Future containing the result of the Select operation returned by the service.
-
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 callgetExecutorService().shutdown()
followed bygetExecutorService().awaitTermination()
prior to calling this method.- Overrides:
shutdown
in classAmazonWebServiceClient
-
-