/* * 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 image. /// public partial class Image { private ArchitectureValues _architecture; private List _blockDeviceMappings = new List(); private BootModeValues _bootMode; private string _creationDate; private string _deprecationTime; private string _description; private bool? _enaSupport; private HypervisorType _hypervisor; private string _imageId; private string _imageLocation; private string _imageOwnerAlias; private ImageTypeValues _imageType; private ImdsSupportValues _imdsSupport; private string _kernelId; private string _name; private string _ownerId; private PlatformValues _platform; private string _platformDetails; private List _productCodes = new List(); private bool? _public; private string _ramdiskId; private string _rootDeviceName; private DeviceType _rootDeviceType; private string _sriovNetSupport; private ImageState _state; private StateReason _stateReason; private List _tags = new List(); private TpmSupportValues _tpmSupport; private string _usageOperation; private VirtualizationType _virtualizationType; /// /// Gets and sets the property Architecture. /// /// The architecture of the image. /// /// public ArchitectureValues Architecture { get { return this._architecture; } set { this._architecture = value; } } // Check to see if Architecture property is set internal bool IsSetArchitecture() { return this._architecture != null; } /// /// Gets and sets the property BlockDeviceMappings. /// /// Any block device mapping entries. /// /// 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 BootMode. /// /// The boot mode of the image. For more information, see Boot /// modes in the Amazon EC2 User Guide. /// /// public BootModeValues BootMode { get { return this._bootMode; } set { this._bootMode = value; } } // Check to see if BootMode property is set internal bool IsSetBootMode() { return this._bootMode != null; } /// /// Gets and sets the property CreationDate. /// /// The date and time the image was created. /// /// public string CreationDate { get { return this._creationDate; } set { this._creationDate = value; } } // Check to see if CreationDate property is set internal bool IsSetCreationDate() { return this._creationDate != null; } /// /// Gets and sets the property DeprecationTime. /// /// The date and time to deprecate the AMI, in UTC, in the following format: YYYY-MM-DDTHH:MM:SSZ. /// If you specified a value for seconds, Amazon EC2 rounds the seconds to the nearest /// minute. /// /// public string DeprecationTime { get { return this._deprecationTime; } set { this._deprecationTime = value; } } // Check to see if DeprecationTime property is set internal bool IsSetDeprecationTime() { return this._deprecationTime != null; } /// /// Gets and sets the property Description. /// /// The description of the AMI that was provided during image creation. /// /// 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 EnaSupport. /// /// Specifies 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 Hypervisor. /// /// The hypervisor type of the image. /// /// public HypervisorType Hypervisor { get { return this._hypervisor; } set { this._hypervisor = value; } } // Check to see if Hypervisor property is set internal bool IsSetHypervisor() { return this._hypervisor != null; } /// /// Gets and sets the property ImageId. /// /// The ID of the AMI. /// /// public string ImageId { get { return this._imageId; } set { this._imageId = value; } } // Check to see if ImageId property is set internal bool IsSetImageId() { return this._imageId != null; } /// /// Gets and sets the property ImageLocation. /// /// The location of the AMI. /// /// public string ImageLocation { get { return this._imageLocation; } set { this._imageLocation = value; } } // Check to see if ImageLocation property is set internal bool IsSetImageLocation() { return this._imageLocation != null; } /// /// Gets and sets the property ImageOwnerAlias. /// /// The Amazon Web Services account alias (for example, amazon, self) /// or the Amazon Web Services account ID of the AMI owner. /// /// public string ImageOwnerAlias { get { return this._imageOwnerAlias; } set { this._imageOwnerAlias = value; } } // Check to see if ImageOwnerAlias property is set internal bool IsSetImageOwnerAlias() { return this._imageOwnerAlias != null; } /// /// Gets and sets the property ImageType. /// /// The type of image. /// /// public ImageTypeValues ImageType { get { return this._imageType; } set { this._imageType = value; } } // Check to see if ImageType property is set internal bool IsSetImageType() { return this._imageType != null; } /// /// Gets and sets the property ImdsSupport. /// /// If v2.0, it indicates that IMDSv2 is specified in the AMI. Instances /// launched from this AMI will have HttpTokens automatically set to required /// so that, by default, the instance requires that IMDSv2 is used when requesting instance /// metadata. In addition, HttpPutResponseHopLimit is set to 2. /// For more information, see Configure /// the AMI in the Amazon EC2 User Guide. /// /// public ImdsSupportValues ImdsSupport { get { return this._imdsSupport; } set { this._imdsSupport = value; } } // Check to see if ImdsSupport property is set internal bool IsSetImdsSupport() { return this._imdsSupport != null; } /// /// Gets and sets the property KernelId. /// /// The kernel associated with the image, if any. Only applicable for machine images. /// /// 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 Name. /// /// The name of the AMI that was provided during image creation. /// /// public string Name { get { return this._name; } set { this._name = value; } } // Check to see if Name property is set internal bool IsSetName() { return this._name != null; } /// /// Gets and sets the property OwnerId. /// /// The ID of the Amazon Web Services account that owns the image. /// /// public string OwnerId { get { return this._ownerId; } set { this._ownerId = value; } } // Check to see if OwnerId property is set internal bool IsSetOwnerId() { return this._ownerId != null; } /// /// Gets and sets the property Platform. /// /// This value is set to windows for Windows AMIs; otherwise, it is blank. /// /// public PlatformValues Platform { get { return this._platform; } set { this._platform = value; } } // Check to see if Platform property is set internal bool IsSetPlatform() { return this._platform != null; } /// /// Gets and sets the property PlatformDetails. /// /// The platform details associated with the billing code of the AMI. For more information, /// see Understand /// AMI billing information in the Amazon EC2 User Guide. /// /// public string PlatformDetails { get { return this._platformDetails; } set { this._platformDetails = value; } } // Check to see if PlatformDetails property is set internal bool IsSetPlatformDetails() { return this._platformDetails != null; } /// /// Gets and sets the property ProductCodes. /// /// Any product codes associated with the AMI. /// /// 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 Public. /// /// Indicates whether the image has public launch permissions. The value is true /// if this image has public launch permissions or false if it has only implicit /// and explicit launch permissions. /// /// public bool Public { get { return this._public.GetValueOrDefault(); } set { this._public = value; } } // Check to see if Public property is set internal bool IsSetPublic() { return this._public.HasValue; } /// /// Gets and sets the property RamdiskId. /// /// The RAM disk associated with the image, if any. Only applicable for machine images. /// /// 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 RootDeviceType. /// /// The type of root device used by the AMI. The AMI can use an Amazon EBS volume or an /// instance store volume. /// /// public DeviceType RootDeviceType { get { return this._rootDeviceType; } set { this._rootDeviceType = value; } } // Check to see if RootDeviceType property is set internal bool IsSetRootDeviceType() { return this._rootDeviceType != null; } /// /// Gets and sets the property SriovNetSupport. /// /// Specifies 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 State. /// /// The current state of the AMI. If the state is available, the image is /// successfully registered and can be used to launch an instance. /// /// public ImageState State { get { return this._state; } set { this._state = value; } } // Check to see if State property is set internal bool IsSetState() { return this._state != null; } /// /// Gets and sets the property StateReason. /// /// The reason for the state change. /// /// public StateReason StateReason { get { return this._stateReason; } set { this._stateReason = value; } } // Check to see if StateReason property is set internal bool IsSetStateReason() { return this._stateReason != null; } /// /// Gets and sets the property Tags. /// /// Any tags assigned to the image. /// /// 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 TpmSupport. /// /// If the image is configured for NitroTPM support, the value is v2.0. For /// more information, see NitroTPM /// in the Amazon EC2 User Guide. /// /// public TpmSupportValues TpmSupport { get { return this._tpmSupport; } set { this._tpmSupport = value; } } // Check to see if TpmSupport property is set internal bool IsSetTpmSupport() { return this._tpmSupport != null; } /// /// Gets and sets the property UsageOperation. /// /// The operation of the Amazon EC2 instance and the billing code that is associated with /// the AMI. usageOperation corresponds to the lineitem/Operation /// column on your Amazon Web Services Cost and Usage Report and in the Amazon /// Web Services Price List API. You can view these fields on the Instances /// or AMIs pages in the Amazon EC2 console, or in the responses that are returned /// by the DescribeImages /// command in the Amazon EC2 API, or the describe-images /// command in the CLI. /// /// public string UsageOperation { get { return this._usageOperation; } set { this._usageOperation = value; } } // Check to see if UsageOperation property is set internal bool IsSetUsageOperation() { return this._usageOperation != null; } /// /// Gets and sets the property VirtualizationType. /// /// The type of virtualization of the AMI. /// /// public VirtualizationType VirtualizationType { get { return this._virtualizationType; } set { this._virtualizationType = value; } } // Check to see if VirtualizationType property is set internal bool IsSetVirtualizationType() { return this._virtualizationType != null; } } }