/* * 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 { /// <summary> /// Container for the parameters to the AssociateFileSystem operation. /// Associate an Amazon FSx file system with the FSx File Gateway. After the association /// process is complete, the file shares on the Amazon FSx file system are available for /// access through the gateway. This operation only supports the FSx File Gateway type. /// </summary> public partial class AssociateFileSystemRequest : AmazonStorageGatewayRequest { private string _auditDestinationARN; private CacheAttributes _cacheAttributes; private string _clientToken; private EndpointNetworkConfiguration _endpointNetworkConfiguration; private string _gatewayARN; private string _locationARN; private string _password; private List<Tag> _tags = new List<Tag>(); private string _userName; /// <summary> /// Gets and sets the property AuditDestinationARN. /// <para> /// The Amazon Resource Name (ARN) of the storage used for the audit logs. /// </para> /// </summary> [AWSProperty(Max=1024)] public string AuditDestinationARN { get { return this._auditDestinationARN; } set { this._auditDestinationARN = value; } } // Check to see if AuditDestinationARN property is set internal bool IsSetAuditDestinationARN() { return this._auditDestinationARN != null; } /// <summary> /// Gets and sets the property CacheAttributes. /// </summary> public CacheAttributes CacheAttributes { get { return this._cacheAttributes; } set { this._cacheAttributes = value; } } // Check to see if CacheAttributes property is set internal bool IsSetCacheAttributes() { return this._cacheAttributes != null; } /// <summary> /// Gets and sets the property ClientToken. /// <para> /// A unique string value that you supply that is used by the FSx File Gateway to ensure /// idempotent file system association creation. /// </para> /// </summary> [AWSProperty(Required=true, Min=5, Max=100)] public string ClientToken { get { return this._clientToken; } set { this._clientToken = value; } } // Check to see if ClientToken property is set internal bool IsSetClientToken() { return this._clientToken != null; } /// <summary> /// Gets and sets the property EndpointNetworkConfiguration. /// <para> /// Specifies the network configuration information for the gateway associated with the /// Amazon FSx file system. /// </para> /// <note> /// <para> /// If multiple file systems are associated with this gateway, this parameter's <code>IpAddresses</code> /// field is required. /// </para> /// </note> /// </summary> public EndpointNetworkConfiguration EndpointNetworkConfiguration { get { return this._endpointNetworkConfiguration; } set { this._endpointNetworkConfiguration = value; } } // Check to see if EndpointNetworkConfiguration property is set internal bool IsSetEndpointNetworkConfiguration() { return this._endpointNetworkConfiguration != null; } /// <summary> /// Gets and sets the property GatewayARN. /// </summary> [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; } /// <summary> /// Gets and sets the property LocationARN. /// <para> /// The Amazon Resource Name (ARN) of the Amazon FSx file system to associate with the /// FSx File Gateway. /// </para> /// </summary> [AWSProperty(Required=true, Min=8, Max=512)] public string LocationARN { get { return this._locationARN; } set { this._locationARN = value; } } // Check to see if LocationARN property is set internal bool IsSetLocationARN() { return this._locationARN != null; } /// <summary> /// Gets and sets the property Password. /// <para> /// The password of the user credential. /// </para> /// </summary> [AWSProperty(Required=true, Sensitive=true, Min=1, Max=1024)] public string Password { get { return this._password; } set { this._password = value; } } // Check to see if Password property is set internal bool IsSetPassword() { return this._password != null; } /// <summary> /// Gets and sets the property Tags. /// <para> /// A list of up to 50 tags that can be assigned to the file system association. Each /// tag is a key-value pair. /// </para> /// </summary> public List<Tag> 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; } /// <summary> /// Gets and sets the property UserName. /// <para> /// The user name of the user credential that has permission to access the root share /// D$ of the Amazon FSx file system. The user account must belong to the Amazon FSx delegated /// admin user group. /// </para> /// </summary> [AWSProperty(Required=true, Min=1, Max=1024)] public string UserName { get { return this._userName; } set { this._userName = value; } } // Check to see if UserName property is set internal bool IsSetUserName() { return this._userName != null; } } }