/* * 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 a volume. /// public partial class Volume { private List _attachments = new List(); private string _availabilityZone; private DateTime? _createTime; private bool? _encrypted; private bool? _fastRestored; private int? _iops; private string _kmsKeyId; private bool? _multiAttachEnabled; private string _outpostArn; private int? _size; private string _snapshotId; private SSEType _sseType; private VolumeState _state; private List _tags = new List(); private int? _throughput; private string _volumeId; private VolumeType _volumeType; /// /// Gets and sets the property Attachments. /// /// Information about the volume attachments. /// /// public List Attachments { get { return this._attachments; } set { this._attachments = value; } } // Check to see if Attachments property is set internal bool IsSetAttachments() { return this._attachments != null && this._attachments.Count > 0; } /// /// Gets and sets the property AvailabilityZone. /// /// The Availability Zone for the volume. /// /// public string AvailabilityZone { get { return this._availabilityZone; } set { this._availabilityZone = value; } } // Check to see if AvailabilityZone property is set internal bool IsSetAvailabilityZone() { return this._availabilityZone != null; } /// /// Gets and sets the property CreateTime. /// /// The time stamp when volume creation was initiated. /// /// public DateTime CreateTime { get { return this._createTime.GetValueOrDefault(); } set { this._createTime = value; } } // Check to see if CreateTime property is set internal bool IsSetCreateTime() { return this._createTime.HasValue; } /// /// Gets and sets the property Encrypted. /// /// Indicates whether the volume is encrypted. /// /// public bool Encrypted { get { return this._encrypted.GetValueOrDefault(); } set { this._encrypted = value; } } // Check to see if Encrypted property is set internal bool IsSetEncrypted() { return this._encrypted.HasValue; } /// /// Gets and sets the property FastRestored. /// /// Indicates whether the volume was created using fast snapshot restore. /// /// public bool FastRestored { get { return this._fastRestored.GetValueOrDefault(); } set { this._fastRestored = value; } } // Check to see if FastRestored property is set internal bool IsSetFastRestored() { return this._fastRestored.HasValue; } /// /// Gets and sets the property Iops. /// /// The number of I/O operations per second (IOPS). For gp3, io1, /// and io2 volumes, this represents the number of IOPS that are provisioned /// for the volume. For gp2 volumes, this represents the baseline performance /// of the volume and the rate at which the volume accumulates I/O credits for bursting. /// /// public int Iops { get { return this._iops.GetValueOrDefault(); } set { this._iops = value; } } // Check to see if Iops property is set internal bool IsSetIops() { return this._iops.HasValue; } /// /// Gets and sets the property KmsKeyId. /// /// The Amazon Resource Name (ARN) of the Key Management Service (KMS) KMS key that was /// used to protect the volume encryption key for the volume. /// /// public string KmsKeyId { get { return this._kmsKeyId; } set { this._kmsKeyId = value; } } // Check to see if KmsKeyId property is set internal bool IsSetKmsKeyId() { return this._kmsKeyId != null; } /// /// Gets and sets the property MultiAttachEnabled. /// /// Indicates whether Amazon EBS Multi-Attach is enabled. /// /// public bool MultiAttachEnabled { get { return this._multiAttachEnabled.GetValueOrDefault(); } set { this._multiAttachEnabled = value; } } // Check to see if MultiAttachEnabled property is set internal bool IsSetMultiAttachEnabled() { return this._multiAttachEnabled.HasValue; } /// /// Gets and sets the property OutpostArn. /// /// The Amazon Resource Name (ARN) of the Outpost. /// /// public string OutpostArn { get { return this._outpostArn; } set { this._outpostArn = value; } } // Check to see if OutpostArn property is set internal bool IsSetOutpostArn() { return this._outpostArn != null; } /// /// Gets and sets the property Size. /// /// The size of the volume, in GiBs. /// /// public int Size { get { return this._size.GetValueOrDefault(); } set { this._size = value; } } // Check to see if Size property is set internal bool IsSetSize() { return this._size.HasValue; } /// /// Gets and sets the property SnapshotId. /// /// The snapshot from which the volume was created, if applicable. /// /// public string SnapshotId { get { return this._snapshotId; } set { this._snapshotId = value; } } // Check to see if SnapshotId property is set internal bool IsSetSnapshotId() { return this._snapshotId != null; } /// /// Gets and sets the property SseType. /// /// Reserved for future use. /// /// public SSEType SseType { get { return this._sseType; } set { this._sseType = value; } } // Check to see if SseType property is set internal bool IsSetSseType() { return this._sseType != null; } /// /// Gets and sets the property State. /// /// The volume state. /// /// public VolumeState 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 Tags. /// /// Any tags assigned to the volume. /// /// 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 Throughput. /// /// The throughput that the volume supports, in MiB/s. /// /// public int Throughput { get { return this._throughput.GetValueOrDefault(); } set { this._throughput = value; } } // Check to see if Throughput property is set internal bool IsSetThroughput() { return this._throughput.HasValue; } /// /// Gets and sets the property VolumeId. /// /// The ID of the volume. /// /// public string VolumeId { get { return this._volumeId; } set { this._volumeId = value; } } // Check to see if VolumeId property is set internal bool IsSetVolumeId() { return this._volumeId != null; } /// /// Gets and sets the property VolumeType. /// /// The volume type. /// /// public VolumeType VolumeType { get { return this._volumeType; } set { this._volumeType = value; } } // Check to see if VolumeType property is set internal bool IsSetVolumeType() { return this._volumeType != null; } } }