/* * 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 System.Xml.Serialization; using System.Text; using System.IO; using System.Net; using Amazon.Runtime; using Amazon.Runtime.Internal; namespace Amazon.SimpleDB.Model { /// /// Container for the parameters to the BatchPutAttributes operation. /// 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: /// /// public partial class BatchPutAttributesRequest : AmazonSimpleDBRequest { private string _domainName; private List _items = new List(); /// /// Empty constructor used to set properties independently even when a simple constructor is available /// public BatchPutAttributesRequest() { } /// /// Instantiates BatchPutAttributesRequest with the parameterized properties /// /// The name of the domain in which the attributes are being stored. /// A list of items on which to perform the operation. public BatchPutAttributesRequest(string domainName, List items) { _domainName = domainName; _items = items; } /// /// Gets and sets the property DomainName. The name of the domain in which the attributes /// are being stored. /// [AWSProperty(Required=true)] public string DomainName { get { return this._domainName; } set { this._domainName = value; } } // Check to see if DomainName property is set internal bool IsSetDomainName() { return this._domainName != null; } /// /// Gets and sets the property Items. A list of items on which to perform the operation. /// [AWSProperty(Required=true)] public List Items { get { return this._items; } set { this._items = value; } } // Check to see if Items property is set internal bool IsSetItems() { return this._items != null && this._items.Count > 0; } } }