All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.amazonaws.services.simpledb.AmazonSimpleDBAsync Maven / Gradle / Ivy

Go to download

The AWS Java SDK for Amazon SimpleDB module holds the client classes that are used for communicating with Amazon SimpleDB Service

There is a newer version: 1.11.67
Show newest version
/*
 * Copyright 2011-2016 Amazon.com, Inc. or its affiliates. All Rights Reserved.
 * 
 * Licensed under the Apache License, Version 2.0 (the "License"). You may not
 * use this file except in compliance with the License. A copy of the License is
 * located at
 * 
 * http://aws.amazon.com/apache2.0
 * 
 * or in the "license" file accompanying this file. This file is distributed on
 * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
 * express or implied. See the License for the specific language governing
 * permissions and limitations under the License.
 */
package com.amazonaws.services.simpledb;

import com.amazonaws.services.simpledb.model.*;

/**
 * Interface for accessing Amazon SimpleDB asynchronously. Each asynchronous
 * method will return a Java Future object representing the asynchronous
 * operation; overloads which accept an {@code AsyncHandler} 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. *

*/ public interface AmazonSimpleDBAsync extends AmazonSimpleDB { /** *

* 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
  • *
*

* * @param batchDeleteAttributesRequest * @return A Java Future containing the result of the BatchDeleteAttributes * operation returned by the service. * @sample AmazonSimpleDBAsync.BatchDeleteAttributes */ java.util.concurrent.Future batchDeleteAttributesAsync( BatchDeleteAttributesRequest batchDeleteAttributesRequest); /** *

* 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
  • *
*

* * @param batchDeleteAttributesRequest * @param 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. * @return A Java Future containing the result of the BatchDeleteAttributes * operation returned by the service. * @sample AmazonSimpleDBAsyncHandler.BatchDeleteAttributes */ java.util.concurrent.Future batchDeleteAttributesAsync( BatchDeleteAttributesRequest batchDeleteAttributesRequest, com.amazonaws.handlers.AsyncHandler asyncHandler); /** *

* 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 the * Item.X.Attribute.Y.Name and * Item.X.Attribute.Y.Value parameters. The client may specify * the first attribute for the first item using the parameters * Item.0.Attribute.0.Name and * Item.0.Attribute.0.Value, and for the second attribute for * the first item by the parameters Item.0.Attribute.1.Name and * Item.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 the * Item.X.Attribute.Y.Name and * Item.X.Attribute.Y.Value are the same. *

*

* Optionally, the requester can supply the Replace parameter * for each individual value. Setting this value to true will * cause the new attribute values to replace the existing attribute values. * For example, if an item I 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, or Expected.X.Exists. * *

* You can execute multiple BatchPutAttributes operations and * other operations in parallel. However, large numbers of concurrent * BatchPutAttributes 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
  • *
*

* * @param batchPutAttributesRequest * @return A Java Future containing the result of the BatchPutAttributes * operation returned by the service. * @sample AmazonSimpleDBAsync.BatchPutAttributes */ java.util.concurrent.Future batchPutAttributesAsync( BatchPutAttributesRequest batchPutAttributesRequest); /** *

* 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 the * Item.X.Attribute.Y.Name and * Item.X.Attribute.Y.Value parameters. The client may specify * the first attribute for the first item using the parameters * Item.0.Attribute.0.Name and * Item.0.Attribute.0.Value, and for the second attribute for * the first item by the parameters Item.0.Attribute.1.Name and * Item.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 the * Item.X.Attribute.Y.Name and * Item.X.Attribute.Y.Value are the same. *

*

* Optionally, the requester can supply the Replace parameter * for each individual value. Setting this value to true will * cause the new attribute values to replace the existing attribute values. * For example, if an item I 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, or Expected.X.Exists. * *

* You can execute multiple BatchPutAttributes operations and * other operations in parallel. However, large numbers of concurrent * BatchPutAttributes 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
  • *
*

* * @param batchPutAttributesRequest * @param 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. * @return A Java Future containing the result of the BatchPutAttributes * operation returned by the service. * @sample AmazonSimpleDBAsyncHandler.BatchPutAttributes */ java.util.concurrent.Future batchPutAttributesAsync( BatchPutAttributesRequest batchPutAttributesRequest, com.amazonaws.handlers.AsyncHandler asyncHandler); /** *

* 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. The CreateDomain 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/. *

* * @param createDomainRequest * @return A Java Future containing the result of the CreateDomain operation * returned by the service. * @sample AmazonSimpleDBAsync.CreateDomain */ java.util.concurrent.Future createDomainAsync( CreateDomainRequest createDomainRequest); /** *

* 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. The CreateDomain 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/. *

* * @param createDomainRequest * @param 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. * @return A Java Future containing the result of the CreateDomain operation * returned by the service. * @sample AmazonSimpleDBAsyncHandler.CreateDomain */ java.util.concurrent.Future createDomainAsync( CreateDomainRequest createDomainRequest, com.amazonaws.handlers.AsyncHandler asyncHandler); /** *

* 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. *

* * @param deleteAttributesRequest * @return A Java Future containing the result of the DeleteAttributes * operation returned by the service. * @sample AmazonSimpleDBAsync.DeleteAttributes */ java.util.concurrent.Future deleteAttributesAsync( DeleteAttributesRequest deleteAttributesRequest); /** *

* 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. *

* * @param deleteAttributesRequest * @param 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. * @return A Java Future containing the result of the DeleteAttributes * operation returned by the service. * @sample AmazonSimpleDBAsyncHandler.DeleteAttributes */ java.util.concurrent.Future deleteAttributesAsync( DeleteAttributesRequest deleteAttributesRequest, com.amazonaws.handlers.AsyncHandler asyncHandler); /** *

* The DeleteDomain operation deletes a domain. Any items (and * their attributes) in the domain are deleted as well. The * DeleteDomain operation might take 10 or more seconds to * complete. *

* * @param deleteDomainRequest * @return A Java Future containing the result of the DeleteDomain operation * returned by the service. * @sample AmazonSimpleDBAsync.DeleteDomain */ java.util.concurrent.Future deleteDomainAsync( DeleteDomainRequest deleteDomainRequest); /** *

* The DeleteDomain operation deletes a domain. Any items (and * their attributes) in the domain are deleted as well. The * DeleteDomain operation might take 10 or more seconds to * complete. *

* * @param deleteDomainRequest * @param 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. * @return A Java Future containing the result of the DeleteDomain operation * returned by the service. * @sample AmazonSimpleDBAsyncHandler.DeleteDomain */ java.util.concurrent.Future deleteDomainAsync( DeleteDomainRequest deleteDomainRequest, com.amazonaws.handlers.AsyncHandler 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. *

* * @param domainMetadataRequest * @return A Java Future containing the result of the DomainMetadata * operation returned by the service. * @sample AmazonSimpleDBAsync.DomainMetadata */ java.util.concurrent.Future domainMetadataAsync( DomainMetadataRequest domainMetadataRequest); /** *

* 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. *

* * @param domainMetadataRequest * @param 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. * @return A Java Future containing the result of the DomainMetadata * operation returned by the service. * @sample AmazonSimpleDBAsyncHandler.DomainMetadata */ java.util.concurrent.Future domainMetadataAsync( DomainMetadataRequest domainMetadataRequest, com.amazonaws.handlers.AsyncHandler asyncHandler); /** *

* 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. *

* * @param getAttributesRequest * @return A Java Future containing the result of the GetAttributes * operation returned by the service. * @sample AmazonSimpleDBAsync.GetAttributes */ java.util.concurrent.Future getAttributesAsync( GetAttributesRequest getAttributesRequest); /** *

* 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. *

* * @param getAttributesRequest * @param 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. * @return A Java Future containing the result of the GetAttributes * operation returned by the service. * @sample AmazonSimpleDBAsyncHandler.GetAttributes */ java.util.concurrent.Future getAttributesAsync( GetAttributesRequest getAttributesRequest, com.amazonaws.handlers.AsyncHandler asyncHandler); /** *

* 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 than * MaxNumberOfDomains domains. Calling ListDomains * successive times with the NextToken provided by the * operation returns up to MaxNumberOfDomains more domain names * with each successive operation call. *

* * @param listDomainsRequest * @return A Java Future containing the result of the ListDomains operation * returned by the service. * @sample AmazonSimpleDBAsync.ListDomains */ java.util.concurrent.Future listDomainsAsync( ListDomainsRequest listDomainsRequest); /** *

* 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 than * MaxNumberOfDomains domains. Calling ListDomains * successive times with the NextToken provided by the * operation returns up to MaxNumberOfDomains more domain names * with each successive operation call. *

* * @param listDomainsRequest * @param 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. * @return A Java Future containing the result of the ListDomains operation * returned by the service. * @sample AmazonSimpleDBAsyncHandler.ListDomains */ java.util.concurrent.Future listDomainsAsync( ListDomainsRequest listDomainsRequest, com.amazonaws.handlers.AsyncHandler asyncHandler); /** * Simplified method form for invoking the ListDomains operation. * * @see #listDomainsAsync(ListDomainsRequest) */ java.util.concurrent.Future listDomainsAsync(); /** * Simplified method form for invoking the ListDomains operation with an * AsyncHandler. * * @see #listDomainsAsync(ListDomainsRequest, * com.amazonaws.handlers.AsyncHandler) */ java.util.concurrent.Future listDomainsAsync( com.amazonaws.handlers.AsyncHandler asyncHandler); /** *

* The PutAttributes operation creates or replaces attributes in an item. * The client may specify new attributes using a combination of the * Attribute.X.Name and Attribute.X.Value * parameters. The client specifies the first attribute by the parameters * Attribute.0.Name and Attribute.0.Value, the * second attribute by the parameters Attribute.1.Name and * Attribute.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 the Attribute.X.Name and * Attribute.X.Value are the same. *

*

* Optionally, the requestor can supply the Replace parameter * for each individual attribute. Setting this value to true * 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 calls * PutAttributes using the attributes { 'b', '4' } * with the Replace 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
  • *
*

* * @param putAttributesRequest * @return A Java Future containing the result of the PutAttributes * operation returned by the service. * @sample AmazonSimpleDBAsync.PutAttributes */ java.util.concurrent.Future putAttributesAsync( PutAttributesRequest putAttributesRequest); /** *

* The PutAttributes operation creates or replaces attributes in an item. * The client may specify new attributes using a combination of the * Attribute.X.Name and Attribute.X.Value * parameters. The client specifies the first attribute by the parameters * Attribute.0.Name and Attribute.0.Value, the * second attribute by the parameters Attribute.1.Name and * Attribute.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 the Attribute.X.Name and * Attribute.X.Value are the same. *

*

* Optionally, the requestor can supply the Replace parameter * for each individual attribute. Setting this value to true * 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 calls * PutAttributes using the attributes { 'b', '4' } * with the Replace 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
  • *
*

* * @param putAttributesRequest * @param 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. * @return A Java Future containing the result of the PutAttributes * operation returned by the service. * @sample AmazonSimpleDBAsyncHandler.PutAttributes */ java.util.concurrent.Future putAttributesAsync( PutAttributesRequest putAttributesRequest, com.amazonaws.handlers.AsyncHandler asyncHandler); /** *

* The Select operation returns a set of attributes for * ItemNames 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. *

* * @param selectRequest * @return A Java Future containing the result of the Select operation * returned by the service. * @sample AmazonSimpleDBAsync.Select */ java.util.concurrent.Future selectAsync( SelectRequest selectRequest); /** *

* The Select operation returns a set of attributes for * ItemNames 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. *

* * @param selectRequest * @param 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. * @return A Java Future containing the result of the Select operation * returned by the service. * @sample AmazonSimpleDBAsyncHandler.Select */ java.util.concurrent.Future selectAsync( SelectRequest selectRequest, com.amazonaws.handlers.AsyncHandler asyncHandler); }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy