/* * 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 autoscaling-2011-01-01.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.AutoScaling.Model { /// /// Describes a block device mapping. /// public partial class BlockDeviceMapping { private string _deviceName; private Ebs _ebs; private bool? _noDevice; private string _virtualName; /// /// Gets and sets the property DeviceName. /// /// The device name assigned to the volume (for example, /dev/sdh or xvdh). /// For more information, see Device /// naming on Linux instances in the Amazon EC2 User Guide for Linux Instances. /// /// /// /// To define a block device mapping, set the device name and exactly one of the following /// properties: Ebs, NoDevice, or VirtualName. /// /// /// [AWSProperty(Required=true, Min=1, Max=255)] public string DeviceName { get { return this._deviceName; } set { this._deviceName = value; } } // Check to see if DeviceName property is set internal bool IsSetDeviceName() { return this._deviceName != null; } /// /// Gets and sets the property Ebs. /// /// Information to attach an EBS volume to an instance at launch. /// /// public Ebs Ebs { get { return this._ebs; } set { this._ebs = value; } } // Check to see if Ebs property is set internal bool IsSetEbs() { return this._ebs != null; } /// /// Gets and sets the property NoDevice. /// /// Setting this value to true prevents a volume that is included in the /// block device mapping of the AMI from being mapped to the specified device name at /// launch. /// /// /// /// If NoDevice is true for the root device, instances might /// fail the EC2 health check. In that case, Amazon EC2 Auto Scaling launches replacement /// instances. /// /// public bool NoDevice { get { return this._noDevice.GetValueOrDefault(); } set { this._noDevice = value; } } // Check to see if NoDevice property is set internal bool IsSetNoDevice() { return this._noDevice.HasValue; } /// /// Gets and sets the property VirtualName. /// /// The name of the instance store volume (virtual device) to attach to an instance at /// launch. The name must be in the form ephemeralX where X is a number /// starting from zero (0), for example, ephemeral0. /// /// [AWSProperty(Min=1, Max=255)] public string VirtualName { get { return this._virtualName; } set { this._virtualName = value; } } // Check to see if VirtualName property is set internal bool IsSetVirtualName() { return this._virtualName != null; } } }