/* * 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 securityhub-2018-10-26.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.SecurityHub.Model { /// /// Details about a launch configuration. /// public partial class AwsAutoScalingLaunchConfigurationDetails { private bool? _associatePublicIpAddress; private List _blockDeviceMappings = new List(); private string _classicLinkVpcId; private List _classicLinkVpcSecurityGroups = new List(); private string _createdTime; private bool? _ebsOptimized; private string _iamInstanceProfile; private string _imageId; private AwsAutoScalingLaunchConfigurationInstanceMonitoringDetails _instanceMonitoring; private string _instanceType; private string _kernelId; private string _keyName; private string _launchConfigurationName; private AwsAutoScalingLaunchConfigurationMetadataOptions _metadataOptions; private string _placementTenancy; private string _ramdiskId; private List _securityGroups = new List(); private string _spotPrice; private string _userData; /// /// Gets and sets the property AssociatePublicIpAddress. /// /// For Auto Scaling groups that run in a VPC, specifies whether to assign a public IP /// address to the group's instances. /// /// public bool AssociatePublicIpAddress { get { return this._associatePublicIpAddress.GetValueOrDefault(); } set { this._associatePublicIpAddress = value; } } // Check to see if AssociatePublicIpAddress property is set internal bool IsSetAssociatePublicIpAddress() { return this._associatePublicIpAddress.HasValue; } /// /// Gets and sets the property BlockDeviceMappings. /// /// Specifies the block devices for 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 ClassicLinkVpcId. /// /// The identifier of a ClassicLink-enabled VPC that EC2-Classic instances are linked /// to. /// /// public string ClassicLinkVpcId { get { return this._classicLinkVpcId; } set { this._classicLinkVpcId = value; } } // Check to see if ClassicLinkVpcId property is set internal bool IsSetClassicLinkVpcId() { return this._classicLinkVpcId != null; } /// /// Gets and sets the property ClassicLinkVpcSecurityGroups. /// /// The identifiers of one or more security groups for the VPC that is specified in ClassicLinkVPCId. /// /// public List ClassicLinkVpcSecurityGroups { get { return this._classicLinkVpcSecurityGroups; } set { this._classicLinkVpcSecurityGroups = value; } } // Check to see if ClassicLinkVpcSecurityGroups property is set internal bool IsSetClassicLinkVpcSecurityGroups() { return this._classicLinkVpcSecurityGroups != null && this._classicLinkVpcSecurityGroups.Count > 0; } /// /// Gets and sets the property CreatedTime. /// /// The creation date and time for the launch configuration. /// /// /// /// Uses the date-time format specified in RFC /// 3339 section 5.6, Internet Date/Time Format. The value cannot contain spaces, /// and date and time should be separated by T. For example, 2020-03-22T13:22:13.933Z. /// /// public string CreatedTime { get { return this._createdTime; } set { this._createdTime = value; } } // Check to see if CreatedTime property is set internal bool IsSetCreatedTime() { return this._createdTime != null; } /// /// Gets and sets the property EbsOptimized. /// /// Whether the launch configuration 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 IamInstanceProfile. /// /// The name or the ARN of the instance profile associated with the IAM role for the instance. /// The instance profile contains the IAM role. /// /// public string IamInstanceProfile { get { return this._iamInstanceProfile; } set { this._iamInstanceProfile = value; } } // Check to see if IamInstanceProfile property is set internal bool IsSetIamInstanceProfile() { return this._iamInstanceProfile != null; } /// /// Gets and sets the property ImageId. /// /// The identifier of the Amazon Machine Image (AMI) that is used to launch EC2 instances. /// /// 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 InstanceMonitoring. /// /// Indicates the type of monitoring for instances in the group. /// /// public AwsAutoScalingLaunchConfigurationInstanceMonitoringDetails InstanceMonitoring { get { return this._instanceMonitoring; } set { this._instanceMonitoring = value; } } // Check to see if InstanceMonitoring property is set internal bool IsSetInstanceMonitoring() { return this._instanceMonitoring != null; } /// /// Gets and sets the property InstanceType. /// /// The instance type for the instances. /// /// 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 identifier of the kernel associated with the AMI. /// /// 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 KeyName. /// /// The name of the key pair. /// /// public string KeyName { get { return this._keyName; } set { this._keyName = value; } } // Check to see if KeyName property is set internal bool IsSetKeyName() { return this._keyName != null; } /// /// Gets and sets the property LaunchConfigurationName. /// /// The name of the launch configuration. /// /// public string LaunchConfigurationName { get { return this._launchConfigurationName; } set { this._launchConfigurationName = value; } } // Check to see if LaunchConfigurationName property is set internal bool IsSetLaunchConfigurationName() { return this._launchConfigurationName != null; } /// /// Gets and sets the property MetadataOptions. /// /// The metadata options for the instances. /// /// public AwsAutoScalingLaunchConfigurationMetadataOptions MetadataOptions { get { return this._metadataOptions; } set { this._metadataOptions = value; } } // Check to see if MetadataOptions property is set internal bool IsSetMetadataOptions() { return this._metadataOptions != null; } /// /// Gets and sets the property PlacementTenancy. /// /// The tenancy of the instance. An instance with dedicated tenancy runs /// on isolated, single-tenant hardware and can only be launched into a VPC. /// /// public string PlacementTenancy { get { return this._placementTenancy; } set { this._placementTenancy = value; } } // Check to see if PlacementTenancy property is set internal bool IsSetPlacementTenancy() { return this._placementTenancy != null; } /// /// Gets and sets the property RamdiskId. /// /// The identifier of the RAM disk associated with the AMI. /// /// 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 SecurityGroups. /// /// The security groups to assign to the instances in the Auto Scaling group. /// /// public List SecurityGroups { get { return this._securityGroups; } set { this._securityGroups = value; } } // Check to see if SecurityGroups property is set internal bool IsSetSecurityGroups() { return this._securityGroups != null && this._securityGroups.Count > 0; } /// /// Gets and sets the property SpotPrice. /// /// The maximum hourly price to be paid for any Spot Instance that is launched to fulfill /// the request. /// /// public string SpotPrice { get { return this._spotPrice; } set { this._spotPrice = value; } } // Check to see if SpotPrice property is set internal bool IsSetSpotPrice() { return this._spotPrice != null; } /// /// Gets and sets the property UserData. /// /// The user data to make available to the launched EC2 instances. Must be base64-encoded /// text. /// /// 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; } } }