/*
* 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 ec2-2016-11-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.EC2.Model
{
///
/// Describes an instance attribute.
///
public partial class InstanceAttribute
{
private List _blockDeviceMappings = new List();
private bool? _disableApiStop;
private bool? _disableApiTermination;
private bool? _ebsOptimized;
private bool? _enaSupport;
private EnclaveOptions _enclaveOptions;
private List _groups = new List();
private string _instanceId;
private string _instanceInitiatedShutdownBehavior;
private string _instanceType;
private string _kernelId;
private List _productCodes = new List();
private string _ramdiskId;
private string _rootDeviceName;
private bool? _sourceDestCheck;
private string _sriovNetSupport;
private string _userData;
///
/// Gets and sets the property BlockDeviceMappings.
///
/// The block device mapping of the instance.
///
///
public List BlockDeviceMappings
{
get { return this._blockDeviceMappings; }
set { this._blockDeviceMappings = value; }
}
// Check to see if BlockDeviceMappings property is set
internal bool IsSetBlockDeviceMappings()
{
return this._blockDeviceMappings != null && this._blockDeviceMappings.Count > 0;
}
///
/// Gets and sets the property DisableApiStop.
///
/// To enable the instance for Amazon Web Services Stop Protection, set this parameter
/// to true
; otherwise, set it to false
.
///
///
public bool DisableApiStop
{
get { return this._disableApiStop.GetValueOrDefault(); }
set { this._disableApiStop = value; }
}
// Check to see if DisableApiStop property is set
internal bool IsSetDisableApiStop()
{
return this._disableApiStop.HasValue;
}
///
/// Gets and sets the property DisableApiTermination.
///
/// If the value is true
, you can't terminate the instance through the Amazon
/// EC2 console, CLI, or API; otherwise, you can.
///
///
public bool DisableApiTermination
{
get { return this._disableApiTermination.GetValueOrDefault(); }
set { this._disableApiTermination = value; }
}
// Check to see if DisableApiTermination property is set
internal bool IsSetDisableApiTermination()
{
return this._disableApiTermination.HasValue;
}
///
/// Gets and sets the property EbsOptimized.
///
/// Indicates whether the instance is optimized for Amazon EBS I/O.
///
///
public bool EbsOptimized
{
get { return this._ebsOptimized.GetValueOrDefault(); }
set { this._ebsOptimized = value; }
}
// Check to see if EbsOptimized property is set
internal bool IsSetEbsOptimized()
{
return this._ebsOptimized.HasValue;
}
///
/// Gets and sets the property EnaSupport.
///
/// Indicates whether enhanced networking with ENA is enabled.
///
///
public bool EnaSupport
{
get { return this._enaSupport.GetValueOrDefault(); }
set { this._enaSupport = value; }
}
// Check to see if EnaSupport property is set
internal bool IsSetEnaSupport()
{
return this._enaSupport.HasValue;
}
///
/// Gets and sets the property EnclaveOptions.
///
/// To enable the instance for Amazon Web Services Nitro Enclaves, set this parameter
/// to true
; otherwise, set it to false
.
///
///
public EnclaveOptions EnclaveOptions
{
get { return this._enclaveOptions; }
set { this._enclaveOptions = value; }
}
// Check to see if EnclaveOptions property is set
internal bool IsSetEnclaveOptions()
{
return this._enclaveOptions != null;
}
///
/// Gets and sets the property Groups.
///
/// The security groups associated with the instance.
///
///
public List Groups
{
get { return this._groups; }
set { this._groups = value; }
}
// Check to see if Groups property is set
internal bool IsSetGroups()
{
return this._groups != null && this._groups.Count > 0;
}
///
/// Gets and sets the property InstanceId.
///
/// The ID of the instance.
///
///
public string InstanceId
{
get { return this._instanceId; }
set { this._instanceId = value; }
}
// Check to see if InstanceId property is set
internal bool IsSetInstanceId()
{
return this._instanceId != null;
}
///
/// Gets and sets the property InstanceInitiatedShutdownBehavior.
///
/// Indicates whether an instance stops or terminates when you initiate shutdown from
/// the instance (using the operating system command for system shutdown).
///
///
public string InstanceInitiatedShutdownBehavior
{
get { return this._instanceInitiatedShutdownBehavior; }
set { this._instanceInitiatedShutdownBehavior = value; }
}
// Check to see if InstanceInitiatedShutdownBehavior property is set
internal bool IsSetInstanceInitiatedShutdownBehavior()
{
return this._instanceInitiatedShutdownBehavior != null;
}
///
/// Gets and sets the property InstanceType.
///
/// The instance type.
///
///
public string InstanceType
{
get { return this._instanceType; }
set { this._instanceType = value; }
}
// Check to see if InstanceType property is set
internal bool IsSetInstanceType()
{
return this._instanceType != null;
}
///
/// Gets and sets the property KernelId.
///
/// The kernel ID.
///
///
public string KernelId
{
get { return this._kernelId; }
set { this._kernelId = value; }
}
// Check to see if KernelId property is set
internal bool IsSetKernelId()
{
return this._kernelId != null;
}
///
/// Gets and sets the property ProductCodes.
///
/// A list of product codes.
///
///
public List ProductCodes
{
get { return this._productCodes; }
set { this._productCodes = value; }
}
// Check to see if ProductCodes property is set
internal bool IsSetProductCodes()
{
return this._productCodes != null && this._productCodes.Count > 0;
}
///
/// Gets and sets the property RamdiskId.
///
/// The RAM disk ID.
///
///
public string RamdiskId
{
get { return this._ramdiskId; }
set { this._ramdiskId = value; }
}
// Check to see if RamdiskId property is set
internal bool IsSetRamdiskId()
{
return this._ramdiskId != null;
}
///
/// Gets and sets the property RootDeviceName.
///
/// The device name of the root device volume (for example, /dev/sda1
).
///
///
public string RootDeviceName
{
get { return this._rootDeviceName; }
set { this._rootDeviceName = value; }
}
// Check to see if RootDeviceName property is set
internal bool IsSetRootDeviceName()
{
return this._rootDeviceName != null;
}
///
/// Gets and sets the property SourceDestCheck.
///
/// Enable or disable source/destination checks, which ensure that the instance is either
/// the source or the destination of any traffic that it receives. If the value is true
,
/// source/destination checks are enabled; otherwise, they are disabled. The default value
/// is true
. You must disable source/destination checks if the instance runs
/// services such as network address translation, routing, or firewalls.
///
///
public bool SourceDestCheck
{
get { return this._sourceDestCheck.GetValueOrDefault(); }
set { this._sourceDestCheck = value; }
}
// Check to see if SourceDestCheck property is set
internal bool IsSetSourceDestCheck()
{
return this._sourceDestCheck.HasValue;
}
///
/// Gets and sets the property SriovNetSupport.
///
/// Indicates whether enhanced networking with the Intel 82599 Virtual Function interface
/// is enabled.
///
///
public string SriovNetSupport
{
get { return this._sriovNetSupport; }
set { this._sriovNetSupport = value; }
}
// Check to see if SriovNetSupport property is set
internal bool IsSetSriovNetSupport()
{
return this._sriovNetSupport != null;
}
///
/// Gets and sets the property UserData.
///
/// The user data.
///
///
public string UserData
{
get { return this._userData; }
set { this._userData = value; }
}
// Check to see if UserData property is set
internal bool IsSetUserData()
{
return this._userData != null;
}
}
}