/*
* 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 marketplace-catalog-2018-09-17.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.MarketplaceCatalog.Model
{
///
/// Container for the parameters to the StartChangeSet operation.
/// Allows you to request changes for your entities. Within a single ChangeSet
,
/// you can't start the same change type against the same entity multiple times. Additionally,
/// when a ChangeSet
is running, all the entities targeted by the different
/// changes are locked until the change set has completed (either succeeded, cancelled,
/// or failed). If you try to start a change set containing a change against an entity
/// that is already locked, you will receive a ResourceInUseException
error.
///
///
///
/// For example, you can't start the ChangeSet
described in the example
/// later in this topic because it contains two changes to run the same change type (AddRevisions
)
/// against the same entity (entity-id@1
).
///
///
///
/// For more information about working with change sets, see
/// Working with change sets. For information on change types for single-AMI products,
/// see Working
/// with single-AMI products. Als, for more information on change types available
/// for container-based products, see Working
/// with container products.
///
///
public partial class StartChangeSetRequest : AmazonMarketplaceCatalogRequest
{
private string _catalog;
private List _changeSet = new List();
private string _changeSetName;
private List _changeSetTags = new List();
private string _clientRequestToken;
///
/// Gets and sets the property Catalog.
///
/// The catalog related to the request. Fixed value: AWSMarketplace
///
///
[AWSProperty(Required=true, Min=1, Max=64)]
public string Catalog
{
get { return this._catalog; }
set { this._catalog = value; }
}
// Check to see if Catalog property is set
internal bool IsSetCatalog()
{
return this._catalog != null;
}
///
/// Gets and sets the property ChangeSet.
///
/// Array of change
object.
///
///
[AWSProperty(Required=true, Min=1, Max=20)]
public List ChangeSet
{
get { return this._changeSet; }
set { this._changeSet = value; }
}
// Check to see if ChangeSet property is set
internal bool IsSetChangeSet()
{
return this._changeSet != null && this._changeSet.Count > 0;
}
///
/// Gets and sets the property ChangeSetName.
///
/// Optional case sensitive string of up to 100 ASCII characters. The change set name
/// can be used to filter the list of change sets.
///
///
[AWSProperty(Min=1, Max=100)]
public string ChangeSetName
{
get { return this._changeSetName; }
set { this._changeSetName = value; }
}
// Check to see if ChangeSetName property is set
internal bool IsSetChangeSetName()
{
return this._changeSetName != null;
}
///
/// Gets and sets the property ChangeSetTags.
///
/// A list of objects specifying each key name and value for the ChangeSetTags
/// property.
///
///
[AWSProperty(Min=1, Max=200)]
public List ChangeSetTags
{
get { return this._changeSetTags; }
set { this._changeSetTags = value; }
}
// Check to see if ChangeSetTags property is set
internal bool IsSetChangeSetTags()
{
return this._changeSetTags != null && this._changeSetTags.Count > 0;
}
///
/// Gets and sets the property ClientRequestToken.
///
/// A unique token to identify the request to ensure idempotency.
///
///
[AWSProperty(Min=1, Max=64)]
public string ClientRequestToken
{
get { return this._clientRequestToken; }
set { this._clientRequestToken = value; }
}
// Check to see if ClientRequestToken property is set
internal bool IsSetClientRequestToken()
{
return this._clientRequestToken != null;
}
}
}