/*
* 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 attribute.
///
public partial class ImageAttribute
{
private List _blockDeviceMappings = new List();
private string _bootMode;
private string _description;
private string _imageId;
private string _imdsSupport;
private string _kernelId;
private string _lastLaunchedTime;
private List _launchPermissions = new List();
private List _productCodes = new List();
private string _ramdiskId;
private string _sriovNetSupport;
private string _tpmSupport;
private string _uefiData;
///
/// Gets and sets the property BlockDeviceMappings.
///
/// The 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.
///
///
public string 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 Description.
///
/// A description for the AMI.
///
///
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 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 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 string 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 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 LastLaunchedTime.
///
/// The date and time, in ISO 8601 date-time
/// format, when the AMI was last used to launch an EC2 instance. When the AMI is
/// used to launch an instance, there is a 24-hour delay before that usage is reported.
///
///
///
/// lastLaunchedTime
data is available starting April 2017.
///
///
///
public string LastLaunchedTime
{
get { return this._lastLaunchedTime; }
set { this._lastLaunchedTime = value; }
}
// Check to see if LastLaunchedTime property is set
internal bool IsSetLastLaunchedTime()
{
return this._lastLaunchedTime != null;
}
///
/// Gets and sets the property LaunchPermissions.
///
/// The launch permissions.
///
///
public List LaunchPermissions
{
get { return this._launchPermissions; }
set { this._launchPermissions = value; }
}
// Check to see if LaunchPermissions property is set
internal bool IsSetLaunchPermissions()
{
return this._launchPermissions != null && this._launchPermissions.Count > 0;
}
///
/// Gets and sets the property ProductCodes.
///
/// The 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 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 TpmSupport.
///
/// If the image is configured for NitroTPM support, the value is v2.0
.
///
///
public string 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 UefiData.
///
/// Base64 representation of the non-volatile UEFI variable store. To retrieve the UEFI
/// data, use the GetInstanceUefiData
/// command. You can inspect and modify the UEFI data by using the python-uefivars
/// tool on GitHub. For more information, see UEFI
/// Secure Boot in the Amazon EC2 User Guide.
///
///
public string UefiData
{
get { return this._uefiData; }
set { this._uefiData = value; }
}
// Check to see if UefiData property is set
internal bool IsSetUefiData()
{
return this._uefiData != null;
}
}
}