/* * 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 cloudformation-2010-05-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.CloudFormation.Model { /// /// The Stack data type. /// public partial class Stack { private List _capabilities = new List(); private string _changeSetId; private DateTime? _creationTime; private DateTime? _deletionTime; private string _description; private bool? _disableRollback; private StackDriftInformation _driftInformation; private bool? _enableTerminationProtection; private DateTime? _lastUpdatedTime; private List _notificationARNs = new List(); private List _outputs = new List(); private List _parameters = new List(); private string _parentId; private bool? _retainExceptOnCreate; private string _roleARN; private RollbackConfiguration _rollbackConfiguration; private string _rootId; private string _stackId; private string _stackName; private StackStatus _stackStatus; private string _stackStatusReason; private List _tags = new List(); private int? _timeoutInMinutes; /// /// Gets and sets the property Capabilities. /// /// The capabilities allowed in the stack. /// /// public List Capabilities { get { return this._capabilities; } set { this._capabilities = value; } } // Check to see if Capabilities property is set internal bool IsSetCapabilities() { return this._capabilities != null && this._capabilities.Count > 0; } /// /// Gets and sets the property ChangeSetId. /// /// The unique ID of the change set. /// /// [AWSProperty(Min=1)] public string ChangeSetId { get { return this._changeSetId; } set { this._changeSetId = value; } } // Check to see if ChangeSetId property is set internal bool IsSetChangeSetId() { return this._changeSetId != null; } /// /// Gets and sets the property CreationTime. /// /// The time at which the stack was created. /// /// [AWSProperty(Required=true)] public DateTime CreationTime { get { return this._creationTime.GetValueOrDefault(); } set { this._creationTime = value; } } // Check to see if CreationTime property is set internal bool IsSetCreationTime() { return this._creationTime.HasValue; } /// /// Gets and sets the property DeletionTime. /// /// The time the stack was deleted. /// /// public DateTime DeletionTime { get { return this._deletionTime.GetValueOrDefault(); } set { this._deletionTime = value; } } // Check to see if DeletionTime property is set internal bool IsSetDeletionTime() { return this._deletionTime.HasValue; } /// /// Gets and sets the property Description. /// /// A user-defined description associated with the stack. /// /// [AWSProperty(Min=1, Max=1024)] public string Description { get { return this._description; } set { this._description = value; } } // Check to see if Description property is set internal bool IsSetDescription() { return this._description != null; } /// /// Gets and sets the property DisableRollback. /// /// Boolean to enable or disable rollback on stack creation failures: /// ///
  • /// /// true: disable rollback. /// ///
  • /// /// false: enable rollback. /// ///
///
public bool DisableRollback { get { return this._disableRollback.GetValueOrDefault(); } set { this._disableRollback = value; } } // Check to see if DisableRollback property is set internal bool IsSetDisableRollback() { return this._disableRollback.HasValue; } /// /// Gets and sets the property DriftInformation. /// /// Information about whether a stack's actual configuration differs, or has drifted, /// from its expected configuration, as defined in the stack template and any values specified /// as template parameters. For more information, see Detecting /// Unregulated Configuration Changes to Stacks and Resources. /// /// public StackDriftInformation DriftInformation { get { return this._driftInformation; } set { this._driftInformation = value; } } // Check to see if DriftInformation property is set internal bool IsSetDriftInformation() { return this._driftInformation != null; } /// /// Gets and sets the property EnableTerminationProtection. /// /// Whether termination protection is enabled for the stack. /// /// /// /// For nested /// stacks, termination protection is set on the root stack and can't be changed directly /// on the nested stack. For more information, see Protecting /// a Stack From Being Deleted in the CloudFormation User Guide. /// /// public bool EnableTerminationProtection { get { return this._enableTerminationProtection.GetValueOrDefault(); } set { this._enableTerminationProtection = value; } } // Check to see if EnableTerminationProtection property is set internal bool IsSetEnableTerminationProtection() { return this._enableTerminationProtection.HasValue; } /// /// Gets and sets the property LastUpdatedTime. /// /// The time the stack was last updated. This field will only be returned if the stack /// has been updated at least once. /// /// public DateTime LastUpdatedTime { get { return this._lastUpdatedTime.GetValueOrDefault(); } set { this._lastUpdatedTime = value; } } // Check to see if LastUpdatedTime property is set internal bool IsSetLastUpdatedTime() { return this._lastUpdatedTime.HasValue; } /// /// Gets and sets the property NotificationARNs. /// /// Amazon SNS topic Amazon Resource Names (ARNs) to which stack related events are published. /// /// [AWSProperty(Max=5)] public List NotificationARNs { get { return this._notificationARNs; } set { this._notificationARNs = value; } } // Check to see if NotificationARNs property is set internal bool IsSetNotificationARNs() { return this._notificationARNs != null && this._notificationARNs.Count > 0; } /// /// Gets and sets the property Outputs. /// /// A list of output structures. /// /// public List Outputs { get { return this._outputs; } set { this._outputs = value; } } // Check to see if Outputs property is set internal bool IsSetOutputs() { return this._outputs != null && this._outputs.Count > 0; } /// /// Gets and sets the property Parameters. /// /// A list of Parameter structures. /// /// public List Parameters { get { return this._parameters; } set { this._parameters = value; } } // Check to see if Parameters property is set internal bool IsSetParameters() { return this._parameters != null && this._parameters.Count > 0; } /// /// Gets and sets the property ParentId. /// /// For nested stacks--stacks created as resources for another stack--the stack ID of /// the direct parent of this stack. For the first level of nested stacks, the root stack /// is also the parent stack. /// /// /// /// For more information, see Working /// with Nested Stacks in the CloudFormation User Guide. /// /// public string ParentId { get { return this._parentId; } set { this._parentId = value; } } // Check to see if ParentId property is set internal bool IsSetParentId() { return this._parentId != null; } /// /// Gets and sets the property RetainExceptOnCreate. /// /// This deletion policy deletes newly created resources, but retains existing resources, /// when a stack operation is rolled back. This ensures new, empty, and unused resources /// are deleted, while critical resources and their data are retained. RetainExceptOnCreate /// can be specified for any resource that supports the /// DeletionPolicy attribute. /// /// public bool RetainExceptOnCreate { get { return this._retainExceptOnCreate.GetValueOrDefault(); } set { this._retainExceptOnCreate = value; } } // Check to see if RetainExceptOnCreate property is set internal bool IsSetRetainExceptOnCreate() { return this._retainExceptOnCreate.HasValue; } /// /// Gets and sets the property RoleARN. /// /// The Amazon Resource Name (ARN) of an Identity and Access Management (IAM) role that's /// associated with the stack. During a stack operation, CloudFormation uses this role's /// credentials to make calls on your behalf. /// /// [AWSProperty(Min=20, Max=2048)] public string RoleARN { get { return this._roleARN; } set { this._roleARN = value; } } // Check to see if RoleARN property is set internal bool IsSetRoleARN() { return this._roleARN != null; } /// /// Gets and sets the property RollbackConfiguration. /// /// The rollback triggers for CloudFormation to monitor during stack creation and updating /// operations, and for the specified monitoring period afterwards. /// /// public RollbackConfiguration RollbackConfiguration { get { return this._rollbackConfiguration; } set { this._rollbackConfiguration = value; } } // Check to see if RollbackConfiguration property is set internal bool IsSetRollbackConfiguration() { return this._rollbackConfiguration != null; } /// /// Gets and sets the property RootId. /// /// For nested stacks--stacks created as resources for another stack--the stack ID of /// the top-level stack to which the nested stack ultimately belongs. /// /// /// /// For more information, see Working /// with Nested Stacks in the CloudFormation User Guide. /// /// public string RootId { get { return this._rootId; } set { this._rootId = value; } } // Check to see if RootId property is set internal bool IsSetRootId() { return this._rootId != null; } /// /// Gets and sets the property StackId. /// /// Unique identifier of the stack. /// /// public string StackId { get { return this._stackId; } set { this._stackId = value; } } // Check to see if StackId property is set internal bool IsSetStackId() { return this._stackId != null; } /// /// Gets and sets the property StackName. /// /// The name associated with the stack. /// /// [AWSProperty(Required=true)] public string StackName { get { return this._stackName; } set { this._stackName = value; } } // Check to see if StackName property is set internal bool IsSetStackName() { return this._stackName != null; } /// /// Gets and sets the property StackStatus. /// /// Current status of the stack. /// /// [AWSProperty(Required=true)] public StackStatus StackStatus { get { return this._stackStatus; } set { this._stackStatus = value; } } // Check to see if StackStatus property is set internal bool IsSetStackStatus() { return this._stackStatus != null; } /// /// Gets and sets the property StackStatusReason. /// /// Success/failure message associated with the stack status. /// /// public string StackStatusReason { get { return this._stackStatusReason; } set { this._stackStatusReason = value; } } // Check to see if StackStatusReason property is set internal bool IsSetStackStatusReason() { return this._stackStatusReason != null; } /// /// Gets and sets the property Tags. /// /// A list of Tags that specify information about the stack. /// /// [AWSProperty(Max=50)] public List Tags { get { return this._tags; } set { this._tags = value; } } // Check to see if Tags property is set internal bool IsSetTags() { return this._tags != null && this._tags.Count > 0; } /// /// Gets and sets the property TimeoutInMinutes. /// /// The amount of time within which stack creation should complete. /// /// [AWSProperty(Min=1)] public int TimeoutInMinutes { get { return this._timeoutInMinutes.GetValueOrDefault(); } set { this._timeoutInMinutes = value; } } // Check to see if TimeoutInMinutes property is set internal bool IsSetTimeoutInMinutes() { return this._timeoutInMinutes.HasValue; } } }