/* * Copyright 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. */ /* * Do not modify this file. This file is generated from the sdb-2009-04-15.normal.json service model. */ using System; using System.Collections.Generic; using Amazon.Runtime; using Amazon.SimpleDB.Model; namespace Amazon.SimpleDB { /// /// Interface for accessing SimpleDB /// /// 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 partial interface IAmazonSimpleDB : IAmazonService, IDisposable { #region BatchDeleteAttributes /// /// 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: /// /// /// Container for the necessary parameters to execute the BatchDeleteAttributes service method. /// /// The response from the BatchDeleteAttributes service method, as returned by SimpleDB. /// REST API Reference for BatchDeleteAttributes Operation BatchDeleteAttributesResponse BatchDeleteAttributes(BatchDeleteAttributesRequest request); /// /// Initiates the asynchronous execution of the BatchDeleteAttributes operation. /// /// /// Container for the necessary parameters to execute the BatchDeleteAttributes operation on AmazonSimpleDBClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndBatchDeleteAttributes /// operation. /// REST API Reference for BatchDeleteAttributes Operation IAsyncResult BeginBatchDeleteAttributes(BatchDeleteAttributesRequest request, AsyncCallback callback, object state); /// /// Finishes the asynchronous execution of the BatchDeleteAttributes operation. /// /// /// The IAsyncResult returned by the call to BeginBatchDeleteAttributes. /// /// Returns a BatchDeleteAttributesResult from SimpleDB. /// REST API Reference for BatchDeleteAttributes Operation BatchDeleteAttributesResponse EndBatchDeleteAttributes(IAsyncResult asyncResult); #endregion #region BatchPutAttributes /// /// 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: /// /// /// Container for the necessary parameters to execute the BatchPutAttributes service method. /// /// The response from the BatchPutAttributes service method, as returned by SimpleDB. /// /// The item name was specified more than once. /// /// /// The value for a parameter is invalid. /// /// /// The request must contain the specified missing parameter. /// /// /// The specified domain does not exist. /// /// /// Too many attributes in this domain. /// /// /// Too many bytes in this domain. /// /// /// Too many attributes in this item. /// /// /// Too many attributes exist in a single call. /// /// /// Too many items exist in a single call. /// /// REST API Reference for BatchPutAttributes Operation BatchPutAttributesResponse BatchPutAttributes(BatchPutAttributesRequest request); /// /// Initiates the asynchronous execution of the BatchPutAttributes operation. /// /// /// Container for the necessary parameters to execute the BatchPutAttributes operation on AmazonSimpleDBClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndBatchPutAttributes /// operation. /// REST API Reference for BatchPutAttributes Operation IAsyncResult BeginBatchPutAttributes(BatchPutAttributesRequest request, AsyncCallback callback, object state); /// /// Finishes the asynchronous execution of the BatchPutAttributes operation. /// /// /// The IAsyncResult returned by the call to BeginBatchPutAttributes. /// /// Returns a BatchPutAttributesResult from SimpleDB. /// REST API Reference for BatchPutAttributes Operation BatchPutAttributesResponse EndBatchPutAttributes(IAsyncResult asyncResult); #endregion #region CreateDomain /// /// 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/. /// /// /// Container for the necessary parameters to execute the CreateDomain service method. /// /// The response from the CreateDomain service method, as returned by SimpleDB. /// /// The value for a parameter is invalid. /// /// /// The request must contain the specified missing parameter. /// /// /// Too many domains exist per this account. /// /// REST API Reference for CreateDomain Operation CreateDomainResponse CreateDomain(CreateDomainRequest request); /// /// Initiates the asynchronous execution of the CreateDomain operation. /// /// /// Container for the necessary parameters to execute the CreateDomain operation on AmazonSimpleDBClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndCreateDomain /// operation. /// REST API Reference for CreateDomain Operation IAsyncResult BeginCreateDomain(CreateDomainRequest request, AsyncCallback callback, object state); /// /// Finishes the asynchronous execution of the CreateDomain operation. /// /// /// The IAsyncResult returned by the call to BeginCreateDomain. /// /// Returns a CreateDomainResult from SimpleDB. /// REST API Reference for CreateDomain Operation CreateDomainResponse EndCreateDomain(IAsyncResult asyncResult); #endregion #region DeleteAttributes /// /// 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. /// /// /// Container for the necessary parameters to execute the DeleteAttributes service method. /// /// The response from the DeleteAttributes service method, as returned by SimpleDB. /// /// The specified attribute does not exist. /// /// /// The value for a parameter is invalid. /// /// /// The request must contain the specified missing parameter. /// /// /// The specified domain does not exist. /// /// REST API Reference for DeleteAttributes Operation DeleteAttributesResponse DeleteAttributes(DeleteAttributesRequest request); /// /// Initiates the asynchronous execution of the DeleteAttributes operation. /// /// /// Container for the necessary parameters to execute the DeleteAttributes operation on AmazonSimpleDBClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndDeleteAttributes /// operation. /// REST API Reference for DeleteAttributes Operation IAsyncResult BeginDeleteAttributes(DeleteAttributesRequest request, AsyncCallback callback, object state); /// /// Finishes the asynchronous execution of the DeleteAttributes operation. /// /// /// The IAsyncResult returned by the call to BeginDeleteAttributes. /// /// Returns a DeleteAttributesResult from SimpleDB. /// REST API Reference for DeleteAttributes Operation DeleteAttributesResponse EndDeleteAttributes(IAsyncResult asyncResult); #endregion #region DeleteDomain /// /// 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. /// /// Container for the necessary parameters to execute the DeleteDomain service method. /// /// The response from the DeleteDomain service method, as returned by SimpleDB. /// /// The request must contain the specified missing parameter. /// /// REST API Reference for DeleteDomain Operation DeleteDomainResponse DeleteDomain(DeleteDomainRequest request); /// /// Initiates the asynchronous execution of the DeleteDomain operation. /// /// /// Container for the necessary parameters to execute the DeleteDomain operation on AmazonSimpleDBClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndDeleteDomain /// operation. /// REST API Reference for DeleteDomain Operation IAsyncResult BeginDeleteDomain(DeleteDomainRequest request, AsyncCallback callback, object state); /// /// Finishes the asynchronous execution of the DeleteDomain operation. /// /// /// The IAsyncResult returned by the call to BeginDeleteDomain. /// /// Returns a DeleteDomainResult from SimpleDB. /// REST API Reference for DeleteDomain Operation DeleteDomainResponse EndDeleteDomain(IAsyncResult asyncResult); #endregion #region DomainMetadata /// /// 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. /// /// Container for the necessary parameters to execute the DomainMetadata service method. /// /// The response from the DomainMetadata service method, as returned by SimpleDB. /// /// The request must contain the specified missing parameter. /// /// /// The specified domain does not exist. /// /// REST API Reference for DomainMetadata Operation DomainMetadataResponse DomainMetadata(DomainMetadataRequest request); /// /// Initiates the asynchronous execution of the DomainMetadata operation. /// /// /// Container for the necessary parameters to execute the DomainMetadata operation on AmazonSimpleDBClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndDomainMetadata /// operation. /// REST API Reference for DomainMetadata Operation IAsyncResult BeginDomainMetadata(DomainMetadataRequest request, AsyncCallback callback, object state); /// /// Finishes the asynchronous execution of the DomainMetadata operation. /// /// /// The IAsyncResult returned by the call to BeginDomainMetadata. /// /// Returns a DomainMetadataResult from SimpleDB. /// REST API Reference for DomainMetadata Operation DomainMetadataResponse EndDomainMetadata(IAsyncResult asyncResult); #endregion #region GetAttributes /// /// 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. /// /// /// Container for the necessary parameters to execute the GetAttributes service method. /// /// The response from the GetAttributes service method, as returned by SimpleDB. /// /// The value for a parameter is invalid. /// /// /// The request must contain the specified missing parameter. /// /// /// The specified domain does not exist. /// /// REST API Reference for GetAttributes Operation GetAttributesResponse GetAttributes(GetAttributesRequest request); /// /// Initiates the asynchronous execution of the GetAttributes operation. /// /// /// Container for the necessary parameters to execute the GetAttributes operation on AmazonSimpleDBClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndGetAttributes /// operation. /// REST API Reference for GetAttributes Operation IAsyncResult BeginGetAttributes(GetAttributesRequest request, AsyncCallback callback, object state); /// /// Finishes the asynchronous execution of the GetAttributes operation. /// /// /// The IAsyncResult returned by the call to BeginGetAttributes. /// /// Returns a GetAttributesResult from SimpleDB. /// REST API Reference for GetAttributes Operation GetAttributesResponse EndGetAttributes(IAsyncResult asyncResult); #endregion #region ListDomains /// /// 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. /// /// /// The response from the ListDomains service method, as returned by SimpleDB. /// /// The specified NextToken is not valid. /// /// /// The value for a parameter is invalid. /// /// REST API Reference for ListDomains Operation ListDomainsResponse ListDomains(); /// /// 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. /// /// Container for the necessary parameters to execute the ListDomains service method. /// /// The response from the ListDomains service method, as returned by SimpleDB. /// /// The specified NextToken is not valid. /// /// /// The value for a parameter is invalid. /// /// REST API Reference for ListDomains Operation ListDomainsResponse ListDomains(ListDomainsRequest request); /// /// Initiates the asynchronous execution of the ListDomains operation. /// /// /// Container for the necessary parameters to execute the ListDomains operation on AmazonSimpleDBClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndListDomains /// operation. /// REST API Reference for ListDomains Operation IAsyncResult BeginListDomains(ListDomainsRequest request, AsyncCallback callback, object state); /// /// Finishes the asynchronous execution of the ListDomains operation. /// /// /// The IAsyncResult returned by the call to BeginListDomains. /// /// Returns a ListDomainsResult from SimpleDB. /// REST API Reference for ListDomains Operation ListDomainsResponse EndListDomains(IAsyncResult asyncResult); #endregion #region PutAttributes /// /// 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: /// /// /// Container for the necessary parameters to execute the PutAttributes service method. /// /// The response from the PutAttributes service method, as returned by SimpleDB. /// /// The specified attribute does not exist. /// /// /// The value for a parameter is invalid. /// /// /// The request must contain the specified missing parameter. /// /// /// The specified domain does not exist. /// /// /// Too many attributes in this domain. /// /// /// Too many bytes in this domain. /// /// /// Too many attributes in this item. /// /// REST API Reference for PutAttributes Operation PutAttributesResponse PutAttributes(PutAttributesRequest request); /// /// Initiates the asynchronous execution of the PutAttributes operation. /// /// /// Container for the necessary parameters to execute the PutAttributes operation on AmazonSimpleDBClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndPutAttributes /// operation. /// REST API Reference for PutAttributes Operation IAsyncResult BeginPutAttributes(PutAttributesRequest request, AsyncCallback callback, object state); /// /// Finishes the asynchronous execution of the PutAttributes operation. /// /// /// The IAsyncResult returned by the call to BeginPutAttributes. /// /// Returns a PutAttributesResult from SimpleDB. /// REST API Reference for PutAttributes Operation PutAttributesResponse EndPutAttributes(IAsyncResult asyncResult); #endregion #region Select /// /// 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. /// /// /// Container for the necessary parameters to execute the Select service method. /// /// The response from the Select service method, as returned by SimpleDB. /// /// The specified NextToken is not valid. /// /// /// Too many predicates exist in the query expression. /// /// /// Too many predicates exist in the query expression. /// /// /// The value for a parameter is invalid. /// /// /// The specified query expression syntax is not valid. /// /// /// The request must contain the specified missing parameter. /// /// /// The specified domain does not exist. /// /// /// A timeout occurred when attempting to query the specified domain with specified query /// expression. /// /// /// Too many attributes requested. /// /// REST API Reference for Select Operation SelectResponse Select(SelectRequest request); /// /// Initiates the asynchronous execution of the Select operation. /// /// /// Container for the necessary parameters to execute the Select operation on AmazonSimpleDBClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndSelect /// operation. /// REST API Reference for Select Operation IAsyncResult BeginSelect(SelectRequest request, AsyncCallback callback, object state); /// /// Finishes the asynchronous execution of the Select operation. /// /// /// The IAsyncResult returned by the call to BeginSelect. /// /// Returns a SelectResult from SimpleDB. /// REST API Reference for Select Operation SelectResponse EndSelect(IAsyncResult asyncResult); #endregion } }