/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace EFS { namespace Model { /** *

A description of the file system.

See Also:

AWS * API Reference

*/ class FileSystemDescription { public: AWS_EFS_API FileSystemDescription(); AWS_EFS_API FileSystemDescription(Aws::Utils::Json::JsonView jsonValue); AWS_EFS_API FileSystemDescription& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_EFS_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The Amazon Web Services account that created the file system.

*/ inline const Aws::String& GetOwnerId() const{ return m_ownerId; } /** *

The Amazon Web Services account that created the file system.

*/ inline bool OwnerIdHasBeenSet() const { return m_ownerIdHasBeenSet; } /** *

The Amazon Web Services account that created the file system.

*/ inline void SetOwnerId(const Aws::String& value) { m_ownerIdHasBeenSet = true; m_ownerId = value; } /** *

The Amazon Web Services account that created the file system.

*/ inline void SetOwnerId(Aws::String&& value) { m_ownerIdHasBeenSet = true; m_ownerId = std::move(value); } /** *

The Amazon Web Services account that created the file system.

*/ inline void SetOwnerId(const char* value) { m_ownerIdHasBeenSet = true; m_ownerId.assign(value); } /** *

The Amazon Web Services account that created the file system.

*/ inline FileSystemDescription& WithOwnerId(const Aws::String& value) { SetOwnerId(value); return *this;} /** *

The Amazon Web Services account that created the file system.

*/ inline FileSystemDescription& WithOwnerId(Aws::String&& value) { SetOwnerId(std::move(value)); return *this;} /** *

The Amazon Web Services account that created the file system.

*/ inline FileSystemDescription& WithOwnerId(const char* value) { SetOwnerId(value); return *this;} /** *

The opaque string specified in the request.

*/ inline const Aws::String& GetCreationToken() const{ return m_creationToken; } /** *

The opaque string specified in the request.

*/ inline bool CreationTokenHasBeenSet() const { return m_creationTokenHasBeenSet; } /** *

The opaque string specified in the request.

*/ inline void SetCreationToken(const Aws::String& value) { m_creationTokenHasBeenSet = true; m_creationToken = value; } /** *

The opaque string specified in the request.

*/ inline void SetCreationToken(Aws::String&& value) { m_creationTokenHasBeenSet = true; m_creationToken = std::move(value); } /** *

The opaque string specified in the request.

*/ inline void SetCreationToken(const char* value) { m_creationTokenHasBeenSet = true; m_creationToken.assign(value); } /** *

The opaque string specified in the request.

*/ inline FileSystemDescription& WithCreationToken(const Aws::String& value) { SetCreationToken(value); return *this;} /** *

The opaque string specified in the request.

*/ inline FileSystemDescription& WithCreationToken(Aws::String&& value) { SetCreationToken(std::move(value)); return *this;} /** *

The opaque string specified in the request.

*/ inline FileSystemDescription& WithCreationToken(const char* value) { SetCreationToken(value); return *this;} /** *

The ID of the file system, assigned by Amazon EFS.

*/ inline const Aws::String& GetFileSystemId() const{ return m_fileSystemId; } /** *

The ID of the file system, assigned by Amazon EFS.

*/ inline bool FileSystemIdHasBeenSet() const { return m_fileSystemIdHasBeenSet; } /** *

The ID of the file system, assigned by Amazon EFS.

*/ inline void SetFileSystemId(const Aws::String& value) { m_fileSystemIdHasBeenSet = true; m_fileSystemId = value; } /** *

The ID of the file system, assigned by Amazon EFS.

*/ inline void SetFileSystemId(Aws::String&& value) { m_fileSystemIdHasBeenSet = true; m_fileSystemId = std::move(value); } /** *

The ID of the file system, assigned by Amazon EFS.

*/ inline void SetFileSystemId(const char* value) { m_fileSystemIdHasBeenSet = true; m_fileSystemId.assign(value); } /** *

The ID of the file system, assigned by Amazon EFS.

*/ inline FileSystemDescription& WithFileSystemId(const Aws::String& value) { SetFileSystemId(value); return *this;} /** *

The ID of the file system, assigned by Amazon EFS.

*/ inline FileSystemDescription& WithFileSystemId(Aws::String&& value) { SetFileSystemId(std::move(value)); return *this;} /** *

The ID of the file system, assigned by Amazon EFS.

*/ inline FileSystemDescription& WithFileSystemId(const char* value) { SetFileSystemId(value); return *this;} /** *

The Amazon Resource Name (ARN) for the EFS file system, in the format * arn:aws:elasticfilesystem:region:account-id:file-system/file-system-id * . Example with sample data: * arn:aws:elasticfilesystem:us-west-2:1111333322228888:file-system/fs-01234567 *

*/ inline const Aws::String& GetFileSystemArn() const{ return m_fileSystemArn; } /** *

The Amazon Resource Name (ARN) for the EFS file system, in the format * arn:aws:elasticfilesystem:region:account-id:file-system/file-system-id * . Example with sample data: * arn:aws:elasticfilesystem:us-west-2:1111333322228888:file-system/fs-01234567 *

*/ inline bool FileSystemArnHasBeenSet() const { return m_fileSystemArnHasBeenSet; } /** *

The Amazon Resource Name (ARN) for the EFS file system, in the format * arn:aws:elasticfilesystem:region:account-id:file-system/file-system-id * . Example with sample data: * arn:aws:elasticfilesystem:us-west-2:1111333322228888:file-system/fs-01234567 *

*/ inline void SetFileSystemArn(const Aws::String& value) { m_fileSystemArnHasBeenSet = true; m_fileSystemArn = value; } /** *

The Amazon Resource Name (ARN) for the EFS file system, in the format * arn:aws:elasticfilesystem:region:account-id:file-system/file-system-id * . Example with sample data: * arn:aws:elasticfilesystem:us-west-2:1111333322228888:file-system/fs-01234567 *

*/ inline void SetFileSystemArn(Aws::String&& value) { m_fileSystemArnHasBeenSet = true; m_fileSystemArn = std::move(value); } /** *

The Amazon Resource Name (ARN) for the EFS file system, in the format * arn:aws:elasticfilesystem:region:account-id:file-system/file-system-id * . Example with sample data: * arn:aws:elasticfilesystem:us-west-2:1111333322228888:file-system/fs-01234567 *

*/ inline void SetFileSystemArn(const char* value) { m_fileSystemArnHasBeenSet = true; m_fileSystemArn.assign(value); } /** *

The Amazon Resource Name (ARN) for the EFS file system, in the format * arn:aws:elasticfilesystem:region:account-id:file-system/file-system-id * . Example with sample data: * arn:aws:elasticfilesystem:us-west-2:1111333322228888:file-system/fs-01234567 *

*/ inline FileSystemDescription& WithFileSystemArn(const Aws::String& value) { SetFileSystemArn(value); return *this;} /** *

The Amazon Resource Name (ARN) for the EFS file system, in the format * arn:aws:elasticfilesystem:region:account-id:file-system/file-system-id * . Example with sample data: * arn:aws:elasticfilesystem:us-west-2:1111333322228888:file-system/fs-01234567 *

*/ inline FileSystemDescription& WithFileSystemArn(Aws::String&& value) { SetFileSystemArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) for the EFS file system, in the format * arn:aws:elasticfilesystem:region:account-id:file-system/file-system-id * . Example with sample data: * arn:aws:elasticfilesystem:us-west-2:1111333322228888:file-system/fs-01234567 *

*/ inline FileSystemDescription& WithFileSystemArn(const char* value) { SetFileSystemArn(value); return *this;} /** *

The time that the file system was created, in seconds (since * 1970-01-01T00:00:00Z).

*/ inline const Aws::Utils::DateTime& GetCreationTime() const{ return m_creationTime; } /** *

The time that the file system was created, in seconds (since * 1970-01-01T00:00:00Z).

*/ inline bool CreationTimeHasBeenSet() const { return m_creationTimeHasBeenSet; } /** *

The time that the file system was created, in seconds (since * 1970-01-01T00:00:00Z).

*/ inline void SetCreationTime(const Aws::Utils::DateTime& value) { m_creationTimeHasBeenSet = true; m_creationTime = value; } /** *

The time that the file system was created, in seconds (since * 1970-01-01T00:00:00Z).

*/ inline void SetCreationTime(Aws::Utils::DateTime&& value) { m_creationTimeHasBeenSet = true; m_creationTime = std::move(value); } /** *

The time that the file system was created, in seconds (since * 1970-01-01T00:00:00Z).

*/ inline FileSystemDescription& WithCreationTime(const Aws::Utils::DateTime& value) { SetCreationTime(value); return *this;} /** *

The time that the file system was created, in seconds (since * 1970-01-01T00:00:00Z).

*/ inline FileSystemDescription& WithCreationTime(Aws::Utils::DateTime&& value) { SetCreationTime(std::move(value)); return *this;} /** *

The lifecycle phase of the file system.

*/ inline const LifeCycleState& GetLifeCycleState() const{ return m_lifeCycleState; } /** *

The lifecycle phase of the file system.

*/ inline bool LifeCycleStateHasBeenSet() const { return m_lifeCycleStateHasBeenSet; } /** *

The lifecycle phase of the file system.

*/ inline void SetLifeCycleState(const LifeCycleState& value) { m_lifeCycleStateHasBeenSet = true; m_lifeCycleState = value; } /** *

The lifecycle phase of the file system.

*/ inline void SetLifeCycleState(LifeCycleState&& value) { m_lifeCycleStateHasBeenSet = true; m_lifeCycleState = std::move(value); } /** *

The lifecycle phase of the file system.

*/ inline FileSystemDescription& WithLifeCycleState(const LifeCycleState& value) { SetLifeCycleState(value); return *this;} /** *

The lifecycle phase of the file system.

*/ inline FileSystemDescription& WithLifeCycleState(LifeCycleState&& value) { SetLifeCycleState(std::move(value)); return *this;} /** *

You can add tags to a file system, including a Name tag. For * more information, see CreateFileSystem. If the file system has a * Name tag, Amazon EFS returns the value in this field.

*/ inline const Aws::String& GetName() const{ return m_name; } /** *

You can add tags to a file system, including a Name tag. For * more information, see CreateFileSystem. If the file system has a * Name tag, Amazon EFS returns the value in this field.

*/ inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } /** *

You can add tags to a file system, including a Name tag. For * more information, see CreateFileSystem. If the file system has a * Name tag, Amazon EFS returns the value in this field.

*/ inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; } /** *

You can add tags to a file system, including a Name tag. For * more information, see CreateFileSystem. If the file system has a * Name tag, Amazon EFS returns the value in this field.

*/ inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } /** *

You can add tags to a file system, including a Name tag. For * more information, see CreateFileSystem. If the file system has a * Name tag, Amazon EFS returns the value in this field.

*/ inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } /** *

You can add tags to a file system, including a Name tag. For * more information, see CreateFileSystem. If the file system has a * Name tag, Amazon EFS returns the value in this field.

*/ inline FileSystemDescription& WithName(const Aws::String& value) { SetName(value); return *this;} /** *

You can add tags to a file system, including a Name tag. For * more information, see CreateFileSystem. If the file system has a * Name tag, Amazon EFS returns the value in this field.

*/ inline FileSystemDescription& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} /** *

You can add tags to a file system, including a Name tag. For * more information, see CreateFileSystem. If the file system has a * Name tag, Amazon EFS returns the value in this field.

*/ inline FileSystemDescription& WithName(const char* value) { SetName(value); return *this;} /** *

The current number of mount targets that the file system has. For more * information, see CreateMountTarget.

*/ inline int GetNumberOfMountTargets() const{ return m_numberOfMountTargets; } /** *

The current number of mount targets that the file system has. For more * information, see CreateMountTarget.

*/ inline bool NumberOfMountTargetsHasBeenSet() const { return m_numberOfMountTargetsHasBeenSet; } /** *

The current number of mount targets that the file system has. For more * information, see CreateMountTarget.

*/ inline void SetNumberOfMountTargets(int value) { m_numberOfMountTargetsHasBeenSet = true; m_numberOfMountTargets = value; } /** *

The current number of mount targets that the file system has. For more * information, see CreateMountTarget.

*/ inline FileSystemDescription& WithNumberOfMountTargets(int value) { SetNumberOfMountTargets(value); return *this;} /** *

The latest known metered size (in bytes) of data stored in the file system, * in its Value field, and the time at which that size was determined * in its Timestamp field. The Timestamp value is the * integer number of seconds since 1970-01-01T00:00:00Z. The * SizeInBytes value doesn't represent the size of a consistent * snapshot of the file system, but it is eventually consistent when there are no * writes to the file system. That is, SizeInBytes represents actual * size only if the file system is not modified for a period longer than a couple * of hours. Otherwise, the value is not the exact size that the file system was at * any point in time.

*/ inline const FileSystemSize& GetSizeInBytes() const{ return m_sizeInBytes; } /** *

The latest known metered size (in bytes) of data stored in the file system, * in its Value field, and the time at which that size was determined * in its Timestamp field. The Timestamp value is the * integer number of seconds since 1970-01-01T00:00:00Z. The * SizeInBytes value doesn't represent the size of a consistent * snapshot of the file system, but it is eventually consistent when there are no * writes to the file system. That is, SizeInBytes represents actual * size only if the file system is not modified for a period longer than a couple * of hours. Otherwise, the value is not the exact size that the file system was at * any point in time.

*/ inline bool SizeInBytesHasBeenSet() const { return m_sizeInBytesHasBeenSet; } /** *

The latest known metered size (in bytes) of data stored in the file system, * in its Value field, and the time at which that size was determined * in its Timestamp field. The Timestamp value is the * integer number of seconds since 1970-01-01T00:00:00Z. The * SizeInBytes value doesn't represent the size of a consistent * snapshot of the file system, but it is eventually consistent when there are no * writes to the file system. That is, SizeInBytes represents actual * size only if the file system is not modified for a period longer than a couple * of hours. Otherwise, the value is not the exact size that the file system was at * any point in time.

*/ inline void SetSizeInBytes(const FileSystemSize& value) { m_sizeInBytesHasBeenSet = true; m_sizeInBytes = value; } /** *

The latest known metered size (in bytes) of data stored in the file system, * in its Value field, and the time at which that size was determined * in its Timestamp field. The Timestamp value is the * integer number of seconds since 1970-01-01T00:00:00Z. The * SizeInBytes value doesn't represent the size of a consistent * snapshot of the file system, but it is eventually consistent when there are no * writes to the file system. That is, SizeInBytes represents actual * size only if the file system is not modified for a period longer than a couple * of hours. Otherwise, the value is not the exact size that the file system was at * any point in time.

*/ inline void SetSizeInBytes(FileSystemSize&& value) { m_sizeInBytesHasBeenSet = true; m_sizeInBytes = std::move(value); } /** *

The latest known metered size (in bytes) of data stored in the file system, * in its Value field, and the time at which that size was determined * in its Timestamp field. The Timestamp value is the * integer number of seconds since 1970-01-01T00:00:00Z. The * SizeInBytes value doesn't represent the size of a consistent * snapshot of the file system, but it is eventually consistent when there are no * writes to the file system. That is, SizeInBytes represents actual * size only if the file system is not modified for a period longer than a couple * of hours. Otherwise, the value is not the exact size that the file system was at * any point in time.

*/ inline FileSystemDescription& WithSizeInBytes(const FileSystemSize& value) { SetSizeInBytes(value); return *this;} /** *

The latest known metered size (in bytes) of data stored in the file system, * in its Value field, and the time at which that size was determined * in its Timestamp field. The Timestamp value is the * integer number of seconds since 1970-01-01T00:00:00Z. The * SizeInBytes value doesn't represent the size of a consistent * snapshot of the file system, but it is eventually consistent when there are no * writes to the file system. That is, SizeInBytes represents actual * size only if the file system is not modified for a period longer than a couple * of hours. Otherwise, the value is not the exact size that the file system was at * any point in time.

*/ inline FileSystemDescription& WithSizeInBytes(FileSystemSize&& value) { SetSizeInBytes(std::move(value)); return *this;} /** *

The performance mode of the file system.

*/ inline const PerformanceMode& GetPerformanceMode() const{ return m_performanceMode; } /** *

The performance mode of the file system.

*/ inline bool PerformanceModeHasBeenSet() const { return m_performanceModeHasBeenSet; } /** *

The performance mode of the file system.

*/ inline void SetPerformanceMode(const PerformanceMode& value) { m_performanceModeHasBeenSet = true; m_performanceMode = value; } /** *

The performance mode of the file system.

*/ inline void SetPerformanceMode(PerformanceMode&& value) { m_performanceModeHasBeenSet = true; m_performanceMode = std::move(value); } /** *

The performance mode of the file system.

*/ inline FileSystemDescription& WithPerformanceMode(const PerformanceMode& value) { SetPerformanceMode(value); return *this;} /** *

The performance mode of the file system.

*/ inline FileSystemDescription& WithPerformanceMode(PerformanceMode&& value) { SetPerformanceMode(std::move(value)); return *this;} /** *

A Boolean value that, if true, indicates that the file system is * encrypted.

*/ inline bool GetEncrypted() const{ return m_encrypted; } /** *

A Boolean value that, if true, indicates that the file system is * encrypted.

*/ inline bool EncryptedHasBeenSet() const { return m_encryptedHasBeenSet; } /** *

A Boolean value that, if true, indicates that the file system is * encrypted.

*/ inline void SetEncrypted(bool value) { m_encryptedHasBeenSet = true; m_encrypted = value; } /** *

A Boolean value that, if true, indicates that the file system is * encrypted.

*/ inline FileSystemDescription& WithEncrypted(bool value) { SetEncrypted(value); return *this;} /** *

The ID of an KMS key used to protect the encrypted file system.

*/ inline const Aws::String& GetKmsKeyId() const{ return m_kmsKeyId; } /** *

The ID of an KMS key used to protect the encrypted file system.

*/ inline bool KmsKeyIdHasBeenSet() const { return m_kmsKeyIdHasBeenSet; } /** *

The ID of an KMS key used to protect the encrypted file system.

*/ inline void SetKmsKeyId(const Aws::String& value) { m_kmsKeyIdHasBeenSet = true; m_kmsKeyId = value; } /** *

The ID of an KMS key used to protect the encrypted file system.

*/ inline void SetKmsKeyId(Aws::String&& value) { m_kmsKeyIdHasBeenSet = true; m_kmsKeyId = std::move(value); } /** *

The ID of an KMS key used to protect the encrypted file system.

*/ inline void SetKmsKeyId(const char* value) { m_kmsKeyIdHasBeenSet = true; m_kmsKeyId.assign(value); } /** *

The ID of an KMS key used to protect the encrypted file system.

*/ inline FileSystemDescription& WithKmsKeyId(const Aws::String& value) { SetKmsKeyId(value); return *this;} /** *

The ID of an KMS key used to protect the encrypted file system.

*/ inline FileSystemDescription& WithKmsKeyId(Aws::String&& value) { SetKmsKeyId(std::move(value)); return *this;} /** *

The ID of an KMS key used to protect the encrypted file system.

*/ inline FileSystemDescription& WithKmsKeyId(const char* value) { SetKmsKeyId(value); return *this;} /** *

Displays the file system's throughput mode. For more information, see Throughput * modes in the Amazon EFS User Guide.

*/ inline const ThroughputMode& GetThroughputMode() const{ return m_throughputMode; } /** *

Displays the file system's throughput mode. For more information, see Throughput * modes in the Amazon EFS User Guide.

*/ inline bool ThroughputModeHasBeenSet() const { return m_throughputModeHasBeenSet; } /** *

Displays the file system's throughput mode. For more information, see Throughput * modes in the Amazon EFS User Guide.

*/ inline void SetThroughputMode(const ThroughputMode& value) { m_throughputModeHasBeenSet = true; m_throughputMode = value; } /** *

Displays the file system's throughput mode. For more information, see Throughput * modes in the Amazon EFS User Guide.

*/ inline void SetThroughputMode(ThroughputMode&& value) { m_throughputModeHasBeenSet = true; m_throughputMode = std::move(value); } /** *

Displays the file system's throughput mode. For more information, see Throughput * modes in the Amazon EFS User Guide.

*/ inline FileSystemDescription& WithThroughputMode(const ThroughputMode& value) { SetThroughputMode(value); return *this;} /** *

Displays the file system's throughput mode. For more information, see Throughput * modes in the Amazon EFS User Guide.

*/ inline FileSystemDescription& WithThroughputMode(ThroughputMode&& value) { SetThroughputMode(std::move(value)); return *this;} /** *

The amount of provisioned throughput, measured in MiB/s, for the file system. * Valid for file systems using ThroughputMode set to * provisioned.

*/ inline double GetProvisionedThroughputInMibps() const{ return m_provisionedThroughputInMibps; } /** *

The amount of provisioned throughput, measured in MiB/s, for the file system. * Valid for file systems using ThroughputMode set to * provisioned.

*/ inline bool ProvisionedThroughputInMibpsHasBeenSet() const { return m_provisionedThroughputInMibpsHasBeenSet; } /** *

The amount of provisioned throughput, measured in MiB/s, for the file system. * Valid for file systems using ThroughputMode set to * provisioned.

*/ inline void SetProvisionedThroughputInMibps(double value) { m_provisionedThroughputInMibpsHasBeenSet = true; m_provisionedThroughputInMibps = value; } /** *

The amount of provisioned throughput, measured in MiB/s, for the file system. * Valid for file systems using ThroughputMode set to * provisioned.

*/ inline FileSystemDescription& WithProvisionedThroughputInMibps(double value) { SetProvisionedThroughputInMibps(value); return *this;} /** *

Describes the Amazon Web Services Availability Zone in which the file system * is located, and is valid only for file systems using One Zone storage classes. * For more information, see Using EFS * storage classes in the Amazon EFS User Guide.

*/ inline const Aws::String& GetAvailabilityZoneName() const{ return m_availabilityZoneName; } /** *

Describes the Amazon Web Services Availability Zone in which the file system * is located, and is valid only for file systems using One Zone storage classes. * For more information, see Using EFS * storage classes in the Amazon EFS User Guide.

*/ inline bool AvailabilityZoneNameHasBeenSet() const { return m_availabilityZoneNameHasBeenSet; } /** *

Describes the Amazon Web Services Availability Zone in which the file system * is located, and is valid only for file systems using One Zone storage classes. * For more information, see Using EFS * storage classes in the Amazon EFS User Guide.

*/ inline void SetAvailabilityZoneName(const Aws::String& value) { m_availabilityZoneNameHasBeenSet = true; m_availabilityZoneName = value; } /** *

Describes the Amazon Web Services Availability Zone in which the file system * is located, and is valid only for file systems using One Zone storage classes. * For more information, see Using EFS * storage classes in the Amazon EFS User Guide.

*/ inline void SetAvailabilityZoneName(Aws::String&& value) { m_availabilityZoneNameHasBeenSet = true; m_availabilityZoneName = std::move(value); } /** *

Describes the Amazon Web Services Availability Zone in which the file system * is located, and is valid only for file systems using One Zone storage classes. * For more information, see Using EFS * storage classes in the Amazon EFS User Guide.

*/ inline void SetAvailabilityZoneName(const char* value) { m_availabilityZoneNameHasBeenSet = true; m_availabilityZoneName.assign(value); } /** *

Describes the Amazon Web Services Availability Zone in which the file system * is located, and is valid only for file systems using One Zone storage classes. * For more information, see Using EFS * storage classes in the Amazon EFS User Guide.

*/ inline FileSystemDescription& WithAvailabilityZoneName(const Aws::String& value) { SetAvailabilityZoneName(value); return *this;} /** *

Describes the Amazon Web Services Availability Zone in which the file system * is located, and is valid only for file systems using One Zone storage classes. * For more information, see Using EFS * storage classes in the Amazon EFS User Guide.

*/ inline FileSystemDescription& WithAvailabilityZoneName(Aws::String&& value) { SetAvailabilityZoneName(std::move(value)); return *this;} /** *

Describes the Amazon Web Services Availability Zone in which the file system * is located, and is valid only for file systems using One Zone storage classes. * For more information, see Using EFS * storage classes in the Amazon EFS User Guide.

*/ inline FileSystemDescription& WithAvailabilityZoneName(const char* value) { SetAvailabilityZoneName(value); return *this;} /** *

The unique and consistent identifier of the Availability Zone in which the * file system's One Zone storage classes exist. For example, use1-az1 * is an Availability Zone ID for the us-east-1 Amazon Web Services Region, and it * has the same location in every Amazon Web Services account.

*/ inline const Aws::String& GetAvailabilityZoneId() const{ return m_availabilityZoneId; } /** *

The unique and consistent identifier of the Availability Zone in which the * file system's One Zone storage classes exist. For example, use1-az1 * is an Availability Zone ID for the us-east-1 Amazon Web Services Region, and it * has the same location in every Amazon Web Services account.

*/ inline bool AvailabilityZoneIdHasBeenSet() const { return m_availabilityZoneIdHasBeenSet; } /** *

The unique and consistent identifier of the Availability Zone in which the * file system's One Zone storage classes exist. For example, use1-az1 * is an Availability Zone ID for the us-east-1 Amazon Web Services Region, and it * has the same location in every Amazon Web Services account.

*/ inline void SetAvailabilityZoneId(const Aws::String& value) { m_availabilityZoneIdHasBeenSet = true; m_availabilityZoneId = value; } /** *

The unique and consistent identifier of the Availability Zone in which the * file system's One Zone storage classes exist. For example, use1-az1 * is an Availability Zone ID for the us-east-1 Amazon Web Services Region, and it * has the same location in every Amazon Web Services account.

*/ inline void SetAvailabilityZoneId(Aws::String&& value) { m_availabilityZoneIdHasBeenSet = true; m_availabilityZoneId = std::move(value); } /** *

The unique and consistent identifier of the Availability Zone in which the * file system's One Zone storage classes exist. For example, use1-az1 * is an Availability Zone ID for the us-east-1 Amazon Web Services Region, and it * has the same location in every Amazon Web Services account.

*/ inline void SetAvailabilityZoneId(const char* value) { m_availabilityZoneIdHasBeenSet = true; m_availabilityZoneId.assign(value); } /** *

The unique and consistent identifier of the Availability Zone in which the * file system's One Zone storage classes exist. For example, use1-az1 * is an Availability Zone ID for the us-east-1 Amazon Web Services Region, and it * has the same location in every Amazon Web Services account.

*/ inline FileSystemDescription& WithAvailabilityZoneId(const Aws::String& value) { SetAvailabilityZoneId(value); return *this;} /** *

The unique and consistent identifier of the Availability Zone in which the * file system's One Zone storage classes exist. For example, use1-az1 * is an Availability Zone ID for the us-east-1 Amazon Web Services Region, and it * has the same location in every Amazon Web Services account.

*/ inline FileSystemDescription& WithAvailabilityZoneId(Aws::String&& value) { SetAvailabilityZoneId(std::move(value)); return *this;} /** *

The unique and consistent identifier of the Availability Zone in which the * file system's One Zone storage classes exist. For example, use1-az1 * is an Availability Zone ID for the us-east-1 Amazon Web Services Region, and it * has the same location in every Amazon Web Services account.

*/ inline FileSystemDescription& WithAvailabilityZoneId(const char* value) { SetAvailabilityZoneId(value); return *this;} /** *

The tags associated with the file system, presented as an array of * Tag objects.

*/ inline const Aws::Vector& GetTags() const{ return m_tags; } /** *

The tags associated with the file system, presented as an array of * Tag objects.

*/ inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } /** *

The tags associated with the file system, presented as an array of * Tag objects.

*/ inline void SetTags(const Aws::Vector& value) { m_tagsHasBeenSet = true; m_tags = value; } /** *

The tags associated with the file system, presented as an array of * Tag objects.

*/ inline void SetTags(Aws::Vector&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); } /** *

The tags associated with the file system, presented as an array of * Tag objects.

*/ inline FileSystemDescription& WithTags(const Aws::Vector& value) { SetTags(value); return *this;} /** *

The tags associated with the file system, presented as an array of * Tag objects.

*/ inline FileSystemDescription& WithTags(Aws::Vector&& value) { SetTags(std::move(value)); return *this;} /** *

The tags associated with the file system, presented as an array of * Tag objects.

*/ inline FileSystemDescription& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; } /** *

The tags associated with the file system, presented as an array of * Tag objects.

*/ inline FileSystemDescription& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; } inline const Aws::String& GetRequestId() const{ return m_requestId; } inline bool RequestIdHasBeenSet() const { return m_requestIdHasBeenSet; } inline void SetRequestId(const Aws::String& value) { m_requestIdHasBeenSet = true; m_requestId = value; } inline void SetRequestId(Aws::String&& value) { m_requestIdHasBeenSet = true; m_requestId = std::move(value); } inline void SetRequestId(const char* value) { m_requestIdHasBeenSet = true; m_requestId.assign(value); } inline FileSystemDescription& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} inline FileSystemDescription& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} inline FileSystemDescription& WithRequestId(const char* value) { SetRequestId(value); return *this;} private: Aws::String m_ownerId; bool m_ownerIdHasBeenSet = false; Aws::String m_creationToken; bool m_creationTokenHasBeenSet = false; Aws::String m_fileSystemId; bool m_fileSystemIdHasBeenSet = false; Aws::String m_fileSystemArn; bool m_fileSystemArnHasBeenSet = false; Aws::Utils::DateTime m_creationTime; bool m_creationTimeHasBeenSet = false; LifeCycleState m_lifeCycleState; bool m_lifeCycleStateHasBeenSet = false; Aws::String m_name; bool m_nameHasBeenSet = false; int m_numberOfMountTargets; bool m_numberOfMountTargetsHasBeenSet = false; FileSystemSize m_sizeInBytes; bool m_sizeInBytesHasBeenSet = false; PerformanceMode m_performanceMode; bool m_performanceModeHasBeenSet = false; bool m_encrypted; bool m_encryptedHasBeenSet = false; Aws::String m_kmsKeyId; bool m_kmsKeyIdHasBeenSet = false; ThroughputMode m_throughputMode; bool m_throughputModeHasBeenSet = false; double m_provisionedThroughputInMibps; bool m_provisionedThroughputInMibpsHasBeenSet = false; Aws::String m_availabilityZoneName; bool m_availabilityZoneNameHasBeenSet = false; Aws::String m_availabilityZoneId; bool m_availabilityZoneIdHasBeenSet = false; Aws::Vector m_tags; bool m_tagsHasBeenSet = false; Aws::String m_requestId; bool m_requestIdHasBeenSet = false; }; } // namespace Model } // namespace EFS } // namespace Aws