/* * 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 lightsail-2016-11-28.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.Lightsail.Model { /// /// Container for the parameters to the CreateDiskFromSnapshot operation. /// Creates a block storage disk from a manual or automatic snapshot of a disk. The resulting /// disk can be attached to an Amazon Lightsail instance in the same Availability Zone /// (e.g., us-east-2a). /// /// /// /// The create disk from snapshot operation supports tag-based access control /// via request tags and resource tags applied to the resource identified by disk /// snapshot name. For more information, see the Amazon /// Lightsail Developer Guide. /// /// public partial class CreateDiskFromSnapshotRequest : AmazonLightsailRequest { private List _addOns = new List(); private string _availabilityZone; private string _diskName; private string _diskSnapshotName; private string _restoreDate; private int? _sizeInGb; private string _sourceDiskName; private List _tags = new List(); private bool? _useLatestRestorableAutoSnapshot; /// /// Gets and sets the property AddOns. /// /// An array of objects that represent the add-ons to enable for the new disk. /// /// public List AddOns { get { return this._addOns; } set { this._addOns = value; } } // Check to see if AddOns property is set internal bool IsSetAddOns() { return this._addOns != null && this._addOns.Count > 0; } /// /// Gets and sets the property AvailabilityZone. /// /// The Availability Zone where you want to create the disk (e.g., us-east-2a). /// Choose the same Availability Zone as the Lightsail instance where you want to create /// the disk. /// /// /// /// Use the GetRegions operation to list the Availability Zones where Lightsail is currently /// available. /// /// [AWSProperty(Required=true)] 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 DiskName. /// /// The unique Lightsail disk name (e.g., my-disk). /// /// [AWSProperty(Required=true)] public string DiskName { get { return this._diskName; } set { this._diskName = value; } } // Check to see if DiskName property is set internal bool IsSetDiskName() { return this._diskName != null; } /// /// Gets and sets the property DiskSnapshotName. /// /// The name of the disk snapshot (e.g., my-snapshot) from which to create /// the new storage disk. /// /// /// /// Constraint: /// ///
  • /// /// This parameter cannot be defined together with the source disk name parameter. /// The disk snapshot name and source disk name parameters are /// mutually exclusive. /// ///
///
public string DiskSnapshotName { get { return this._diskSnapshotName; } set { this._diskSnapshotName = value; } } // Check to see if DiskSnapshotName property is set internal bool IsSetDiskSnapshotName() { return this._diskSnapshotName != null; } /// /// Gets and sets the property RestoreDate. /// /// The date of the automatic snapshot to use for the new disk. Use the get auto /// snapshots operation to identify the dates of the available automatic snapshots. /// /// /// /// Constraints: /// ///
  • /// /// Must be specified in YYYY-MM-DD format. /// ///
  • /// /// This parameter cannot be defined together with the use latest restorable auto /// snapshot parameter. The restore date and use latest restorable /// auto snapshot parameters are mutually exclusive. /// ///
  • /// /// Define this parameter only when creating a new disk from an automatic snapshot. For /// more information, see the Amazon /// Lightsail Developer Guide. /// ///
///
public string RestoreDate { get { return this._restoreDate; } set { this._restoreDate = value; } } // Check to see if RestoreDate property is set internal bool IsSetRestoreDate() { return this._restoreDate != null; } /// /// Gets and sets the property SizeInGb. /// /// The size of the disk in GB (e.g., 32). /// /// [AWSProperty(Required=true)] public int SizeInGb { get { return this._sizeInGb.GetValueOrDefault(); } set { this._sizeInGb = value; } } // Check to see if SizeInGb property is set internal bool IsSetSizeInGb() { return this._sizeInGb.HasValue; } /// /// Gets and sets the property SourceDiskName. /// /// The name of the source disk from which the source automatic snapshot was created. /// /// /// /// Constraints: /// ///
  • /// /// This parameter cannot be defined together with the disk snapshot name /// parameter. The source disk name and disk snapshot name parameters /// are mutually exclusive. /// ///
  • /// /// Define this parameter only when creating a new disk from an automatic snapshot. For /// more information, see the Amazon /// Lightsail Developer Guide. /// ///
///
public string SourceDiskName { get { return this._sourceDiskName; } set { this._sourceDiskName = value; } } // Check to see if SourceDiskName property is set internal bool IsSetSourceDiskName() { return this._sourceDiskName != null; } /// /// Gets and sets the property Tags. /// /// The tag keys and optional values to add to the resource during create. /// /// /// /// Use the TagResource action to tag a resource after it's created. /// /// 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 UseLatestRestorableAutoSnapshot. /// /// A Boolean value to indicate whether to use the latest available automatic snapshot. /// /// /// /// Constraints: /// ///
  • /// /// This parameter cannot be defined together with the restore date parameter. /// The use latest restorable auto snapshot and restore date /// parameters are mutually exclusive. /// ///
  • /// /// Define this parameter only when creating a new disk from an automatic snapshot. For /// more information, see the Amazon /// Lightsail Developer Guide. /// ///
///
public bool UseLatestRestorableAutoSnapshot { get { return this._useLatestRestorableAutoSnapshot.GetValueOrDefault(); } set { this._useLatestRestorableAutoSnapshot = value; } } // Check to see if UseLatestRestorableAutoSnapshot property is set internal bool IsSetUseLatestRestorableAutoSnapshot() { return this._useLatestRestorableAutoSnapshot.HasValue; } } }