/* * 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 storagegateway-2013-06-30.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.StorageGateway.Model { /// /// Container for the parameters to the AttachVolume operation. /// Connects a volume to an iSCSI connection and then attaches the volume to the specified /// gateway. Detaching and attaching a volume enables you to recover your data from one /// gateway to a different gateway without creating a snapshot. It also makes it easier /// to move your volumes from an on-premises gateway to a gateway hosted on an Amazon /// EC2 instance. /// public partial class AttachVolumeRequest : AmazonStorageGatewayRequest { private string _diskId; private string _gatewayARN; private string _networkInterfaceId; private string _targetName; private string _volumeARN; /// /// Gets and sets the property DiskId. /// /// The unique device ID or other distinguishing data that identifies the local disk used /// to create the volume. This value is only required when you are attaching a stored /// volume. /// /// [AWSProperty(Min=1, Max=300)] public string DiskId { get { return this._diskId; } set { this._diskId = value; } } // Check to see if DiskId property is set internal bool IsSetDiskId() { return this._diskId != null; } /// /// Gets and sets the property GatewayARN. /// /// The Amazon Resource Name (ARN) of the gateway that you want to attach the volume to. /// /// [AWSProperty(Required=true, Min=50, Max=500)] public string GatewayARN { get { return this._gatewayARN; } set { this._gatewayARN = value; } } // Check to see if GatewayARN property is set internal bool IsSetGatewayARN() { return this._gatewayARN != null; } /// /// Gets and sets the property NetworkInterfaceId. /// /// The network interface of the gateway on which to expose the iSCSI target. Only IPv4 /// addresses are accepted. Use DescribeGatewayInformation to get a list of the /// network interfaces available on a gateway. /// /// /// /// Valid Values: A valid IP address. /// /// [AWSProperty(Required=true)] public string NetworkInterfaceId { get { return this._networkInterfaceId; } set { this._networkInterfaceId = value; } } // Check to see if NetworkInterfaceId property is set internal bool IsSetNetworkInterfaceId() { return this._networkInterfaceId != null; } /// /// Gets and sets the property TargetName. /// /// The name of the iSCSI target used by an initiator to connect to a volume and used /// as a suffix for the target ARN. For example, specifying TargetName as /// myvolume results in the target ARN of arn:aws:storagegateway:us-east-2:111122223333:gateway/sgw-12A3456B/target/iqn.1997-05.com.amazon:myvolume. /// The target name must be unique across all volumes on a gateway. /// /// /// /// If you don't specify a value, Storage Gateway uses the value that was previously used /// for this volume as the new target name. /// /// [AWSProperty(Min=1, Max=200)] public string TargetName { get { return this._targetName; } set { this._targetName = value; } } // Check to see if TargetName property is set internal bool IsSetTargetName() { return this._targetName != null; } /// /// Gets and sets the property VolumeARN. /// /// The Amazon Resource Name (ARN) of the volume to attach to the specified gateway. /// /// [AWSProperty(Required=true, Min=50, Max=500)] public string VolumeARN { get { return this._volumeARN; } set { this._volumeARN = value; } } // Check to see if VolumeARN property is set internal bool IsSetVolumeARN() { return this._volumeARN != null; } } }