/* * 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 fsx-2018-03-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.FSx.Model { /// /// A description of a specific Amazon FSx file system. /// public partial class FileSystem { private List _administrativeActions = new List(); private DateTime? _creationTime; private string _dnsName; private FileSystemFailureDetails _failureDetails; private string _fileSystemId; private FileSystemType _fileSystemType; private string _fileSystemTypeVersion; private string _kmsKeyId; private FileSystemLifecycle _lifecycle; private LustreFileSystemConfiguration _lustreConfiguration; private List _networkInterfaceIds = new List(); private OntapFileSystemConfiguration _ontapConfiguration; private OpenZFSFileSystemConfiguration _openZFSConfiguration; private string _ownerId; private string _resourceARN; private int? _storageCapacity; private StorageType _storageType; private List _subnetIds = new List(); private List _tags = new List(); private string _vpcId; private WindowsFileSystemConfiguration _windowsConfiguration; /// /// Gets and sets the property AdministrativeActions. /// /// A list of administrative actions for the file system that are in process or waiting /// to be processed. Administrative actions describe changes to the Amazon FSx system /// that you have initiated using the UpdateFileSystem operation. /// /// [AWSProperty(Max=50)] public List AdministrativeActions { get { return this._administrativeActions; } set { this._administrativeActions = value; } } // Check to see if AdministrativeActions property is set internal bool IsSetAdministrativeActions() { return this._administrativeActions != null && this._administrativeActions.Count > 0; } /// /// Gets and sets the property CreationTime. /// /// The time that the file system was created, in seconds (since 1970-01-01T00:00:00Z), /// also known as Unix time. /// /// public DateTime CreationTime { get { return this._creationTime.GetValueOrDefault(); } set { this._creationTime = value; } } // Check to see if CreationTime property is set internal bool IsSetCreationTime() { return this._creationTime.HasValue; } /// /// Gets and sets the property DNSName. /// /// The Domain Name System (DNS) name for the file system. /// /// [AWSProperty(Min=16, Max=275)] public string DNSName { get { return this._dnsName; } set { this._dnsName = value; } } // Check to see if DNSName property is set internal bool IsSetDNSName() { return this._dnsName != null; } /// /// Gets and sets the property FailureDetails. /// public FileSystemFailureDetails FailureDetails { get { return this._failureDetails; } set { this._failureDetails = value; } } // Check to see if FailureDetails property is set internal bool IsSetFailureDetails() { return this._failureDetails != null; } /// /// Gets and sets the property FileSystemId. /// /// The system-generated, unique 17-digit ID of the file system. /// /// [AWSProperty(Min=11, Max=21)] public string FileSystemId { get { return this._fileSystemId; } set { this._fileSystemId = value; } } // Check to see if FileSystemId property is set internal bool IsSetFileSystemId() { return this._fileSystemId != null; } /// /// Gets and sets the property FileSystemType. /// /// The type of Amazon FSx file system, which can be LUSTRE, WINDOWS, /// ONTAP, or OPENZFS. /// /// public FileSystemType FileSystemType { get { return this._fileSystemType; } set { this._fileSystemType = value; } } // Check to see if FileSystemType property is set internal bool IsSetFileSystemType() { return this._fileSystemType != null; } /// /// Gets and sets the property FileSystemTypeVersion. /// /// The Lustre version of the Amazon FSx for Lustre file system, either 2.10 /// or 2.12. /// /// [AWSProperty(Min=1, Max=20)] public string FileSystemTypeVersion { get { return this._fileSystemTypeVersion; } set { this._fileSystemTypeVersion = value; } } // Check to see if FileSystemTypeVersion property is set internal bool IsSetFileSystemTypeVersion() { return this._fileSystemTypeVersion != null; } /// /// Gets and sets the property KmsKeyId. /// /// The ID of the Key Management Service (KMS) key used to encrypt Amazon FSx file system /// data. Used as follows with Amazon FSx file system types: /// ///
  • /// /// Amazon FSx for Lustre PERSISTENT_1 and PERSISTENT_2 deployment /// types only. /// /// /// /// SCRATCH_1 and SCRATCH_2 types are encrypted using the Amazon /// FSx service KMS key for your account. /// ///
  • /// /// Amazon FSx for NetApp ONTAP /// ///
  • /// /// Amazon FSx for OpenZFS /// ///
  • /// /// Amazon FSx for Windows File Server /// ///
///
[AWSProperty(Min=1, Max=2048)] 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 Lifecycle. /// /// The lifecycle status of the file system. The following are the possible values and /// what they mean: /// ///
  • /// /// AVAILABLE - The file system is in a healthy state, and is reachable /// and available for use. /// ///
  • /// /// CREATING - Amazon FSx is creating the new file system. /// ///
  • /// /// DELETING - Amazon FSx is deleting an existing file system. /// ///
  • /// /// FAILED - An existing file system has experienced an unrecoverable failure. /// When creating a new file system, Amazon FSx was unable to create the file system. /// ///
  • /// /// MISCONFIGURED - The file system is in a failed but recoverable state. /// ///
  • /// /// MISCONFIGURED_UNAVAILABLE - (Amazon FSx for Windows File Server only) /// The file system is currently unavailable due to a change in your Active Directory /// configuration. /// ///
  • /// /// UPDATING - The file system is undergoing a customer-initiated update. /// ///
///
public FileSystemLifecycle Lifecycle { get { return this._lifecycle; } set { this._lifecycle = value; } } // Check to see if Lifecycle property is set internal bool IsSetLifecycle() { return this._lifecycle != null; } /// /// Gets and sets the property LustreConfiguration. /// public LustreFileSystemConfiguration LustreConfiguration { get { return this._lustreConfiguration; } set { this._lustreConfiguration = value; } } // Check to see if LustreConfiguration property is set internal bool IsSetLustreConfiguration() { return this._lustreConfiguration != null; } /// /// Gets and sets the property NetworkInterfaceIds. /// /// The IDs of the elastic network interfaces from which a specific file system is accessible. /// The elastic network interface is automatically created in the same virtual private /// cloud (VPC) that the Amazon FSx file system was created in. For more information, /// see Elastic /// Network Interfaces in the Amazon EC2 User Guide. /// /// /// /// For an Amazon FSx for Windows File Server file system, you can have one network interface /// ID. For an Amazon FSx for Lustre file system, you can have more than one. /// /// [AWSProperty(Max=50)] public List NetworkInterfaceIds { get { return this._networkInterfaceIds; } set { this._networkInterfaceIds = value; } } // Check to see if NetworkInterfaceIds property is set internal bool IsSetNetworkInterfaceIds() { return this._networkInterfaceIds != null && this._networkInterfaceIds.Count > 0; } /// /// Gets and sets the property OntapConfiguration. /// /// The configuration for this Amazon FSx for NetApp ONTAP file system. /// /// public OntapFileSystemConfiguration OntapConfiguration { get { return this._ontapConfiguration; } set { this._ontapConfiguration = value; } } // Check to see if OntapConfiguration property is set internal bool IsSetOntapConfiguration() { return this._ontapConfiguration != null; } /// /// Gets and sets the property OpenZFSConfiguration. /// /// The configuration for this Amazon FSx for OpenZFS file system. /// /// public OpenZFSFileSystemConfiguration OpenZFSConfiguration { get { return this._openZFSConfiguration; } set { this._openZFSConfiguration = value; } } // Check to see if OpenZFSConfiguration property is set internal bool IsSetOpenZFSConfiguration() { return this._openZFSConfiguration != null; } /// /// Gets and sets the property OwnerId. /// /// The Amazon Web Services account that created the file system. If the file system was /// created by a user in IAM Identity Center, the Amazon Web Services account to which /// the IAM user belongs is the owner. /// /// [AWSProperty(Min=12, Max=12)] public string OwnerId { get { return this._ownerId; } set { this._ownerId = value; } } // Check to see if OwnerId property is set internal bool IsSetOwnerId() { return this._ownerId != null; } /// /// Gets and sets the property ResourceARN. /// /// The Amazon Resource Name (ARN) of the file system resource. /// /// [AWSProperty(Min=8, Max=512)] public string ResourceARN { get { return this._resourceARN; } set { this._resourceARN = value; } } // Check to see if ResourceARN property is set internal bool IsSetResourceARN() { return this._resourceARN != null; } /// /// Gets and sets the property StorageCapacity. /// /// The storage capacity of the file system in gibibytes (GiB). /// /// [AWSProperty(Min=0, Max=2147483647)] public int StorageCapacity { get { return this._storageCapacity.GetValueOrDefault(); } set { this._storageCapacity = value; } } // Check to see if StorageCapacity property is set internal bool IsSetStorageCapacity() { return this._storageCapacity.HasValue; } /// /// Gets and sets the property StorageType. /// /// The type of storage the file system is using. If set to SSD, the file /// system uses solid state drive storage. If set to HDD, the file system /// uses hard disk drive storage. /// /// public StorageType StorageType { get { return this._storageType; } set { this._storageType = value; } } // Check to see if StorageType property is set internal bool IsSetStorageType() { return this._storageType != null; } /// /// Gets and sets the property SubnetIds. /// /// Specifies the IDs of the subnets that the file system is accessible from. For the /// Amazon FSx Windows and ONTAP MULTI_AZ_1 file system deployment type, /// there are two subnet IDs, one for the preferred file server and one for the standby /// file server. The preferred file server subnet identified in the PreferredSubnetID /// property. All other file systems have only one subnet ID. /// /// /// /// For FSx for Lustre file systems, and Single-AZ Windows file systems, this is the ID /// of the subnet that contains the file system's endpoint. For MULTI_AZ_1 /// Windows and ONTAP file systems, the file system endpoint is available in the PreferredSubnetID. /// /// [AWSProperty(Max=50)] public List SubnetIds { get { return this._subnetIds; } set { this._subnetIds = value; } } // Check to see if SubnetIds property is set internal bool IsSetSubnetIds() { return this._subnetIds != null && this._subnetIds.Count > 0; } /// /// Gets and sets the property Tags. /// /// The tags to associate with the file system. For more information, see Tagging /// your Amazon EC2 resources in the Amazon EC2 User Guide. /// /// [AWSProperty(Min=1, Max=50)] 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 VpcId. /// /// The ID of the primary virtual private cloud (VPC) for the file system. /// /// [AWSProperty(Min=12, Max=21)] public string VpcId { get { return this._vpcId; } set { this._vpcId = value; } } // Check to see if VpcId property is set internal bool IsSetVpcId() { return this._vpcId != null; } /// /// Gets and sets the property WindowsConfiguration. /// /// The configuration for this Amazon FSx for Windows File Server file system. /// /// public WindowsFileSystemConfiguration WindowsConfiguration { get { return this._windowsConfiguration; } set { this._windowsConfiguration = value; } } // Check to see if WindowsConfiguration property is set internal bool IsSetWindowsConfiguration() { return this._windowsConfiguration != null; } } }