/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include The request object for the UpdateFileSystem
* operation.See Also:
AWS
* API Reference
The ID of the file system that you are updating.
*/ inline const Aws::String& GetFileSystemId() const{ return m_fileSystemId; } /** *The ID of the file system that you are updating.
*/ inline bool FileSystemIdHasBeenSet() const { return m_fileSystemIdHasBeenSet; } /** *The ID of the file system that you are updating.
*/ inline void SetFileSystemId(const Aws::String& value) { m_fileSystemIdHasBeenSet = true; m_fileSystemId = value; } /** *The ID of the file system that you are updating.
*/ inline void SetFileSystemId(Aws::String&& value) { m_fileSystemIdHasBeenSet = true; m_fileSystemId = std::move(value); } /** *The ID of the file system that you are updating.
*/ inline void SetFileSystemId(const char* value) { m_fileSystemIdHasBeenSet = true; m_fileSystemId.assign(value); } /** *The ID of the file system that you are updating.
*/ inline UpdateFileSystemRequest& WithFileSystemId(const Aws::String& value) { SetFileSystemId(value); return *this;} /** *The ID of the file system that you are updating.
*/ inline UpdateFileSystemRequest& WithFileSystemId(Aws::String&& value) { SetFileSystemId(std::move(value)); return *this;} /** *The ID of the file system that you are updating.
*/ inline UpdateFileSystemRequest& WithFileSystemId(const char* value) { SetFileSystemId(value); return *this;} /** *A string of up to 63 ASCII characters that Amazon FSx uses to ensure * idempotent updates. This string is automatically filled on your behalf when you * use the Command Line Interface (CLI) or an Amazon Web Services SDK.
*/ inline const Aws::String& GetClientRequestToken() const{ return m_clientRequestToken; } /** *A string of up to 63 ASCII characters that Amazon FSx uses to ensure * idempotent updates. This string is automatically filled on your behalf when you * use the Command Line Interface (CLI) or an Amazon Web Services SDK.
*/ inline bool ClientRequestTokenHasBeenSet() const { return m_clientRequestTokenHasBeenSet; } /** *A string of up to 63 ASCII characters that Amazon FSx uses to ensure * idempotent updates. This string is automatically filled on your behalf when you * use the Command Line Interface (CLI) or an Amazon Web Services SDK.
*/ inline void SetClientRequestToken(const Aws::String& value) { m_clientRequestTokenHasBeenSet = true; m_clientRequestToken = value; } /** *A string of up to 63 ASCII characters that Amazon FSx uses to ensure * idempotent updates. This string is automatically filled on your behalf when you * use the Command Line Interface (CLI) or an Amazon Web Services SDK.
*/ inline void SetClientRequestToken(Aws::String&& value) { m_clientRequestTokenHasBeenSet = true; m_clientRequestToken = std::move(value); } /** *A string of up to 63 ASCII characters that Amazon FSx uses to ensure * idempotent updates. This string is automatically filled on your behalf when you * use the Command Line Interface (CLI) or an Amazon Web Services SDK.
*/ inline void SetClientRequestToken(const char* value) { m_clientRequestTokenHasBeenSet = true; m_clientRequestToken.assign(value); } /** *A string of up to 63 ASCII characters that Amazon FSx uses to ensure * idempotent updates. This string is automatically filled on your behalf when you * use the Command Line Interface (CLI) or an Amazon Web Services SDK.
*/ inline UpdateFileSystemRequest& WithClientRequestToken(const Aws::String& value) { SetClientRequestToken(value); return *this;} /** *A string of up to 63 ASCII characters that Amazon FSx uses to ensure * idempotent updates. This string is automatically filled on your behalf when you * use the Command Line Interface (CLI) or an Amazon Web Services SDK.
*/ inline UpdateFileSystemRequest& WithClientRequestToken(Aws::String&& value) { SetClientRequestToken(std::move(value)); return *this;} /** *A string of up to 63 ASCII characters that Amazon FSx uses to ensure * idempotent updates. This string is automatically filled on your behalf when you * use the Command Line Interface (CLI) or an Amazon Web Services SDK.
*/ inline UpdateFileSystemRequest& WithClientRequestToken(const char* value) { SetClientRequestToken(value); return *this;} /** *Use this parameter to increase the storage capacity of an FSx for Windows * File Server, FSx for Lustre, FSx for OpenZFS, or FSx for ONTAP file system. * Specifies the storage capacity target value, in GiB, to increase the storage * capacity for the file system that you're updating.
You can't make * a storage capacity increase request if there is an existing storage capacity * increase request in progress.
For Lustre file systems, the * storage capacity target value can be the following:
For
* SCRATCH_2
, PERSISTENT_1
, and PERSISTENT_2
* SSD
deployment types, valid values are in multiples of 2400 GiB. The
* value must be greater than the current storage capacity.
For
* PERSISTENT HDD
file systems, valid values are multiples of 6000 GiB
* for 12-MBps throughput per TiB file systems and multiples of 1800 GiB for
* 40-MBps throughput per TiB file systems. The values must be greater than the
* current storage capacity.
For SCRATCH_1
file
* systems, you can't increase the storage capacity.
For more * information, see Managing * storage and throughput capacity in the FSx for Lustre User Guide.
*For FSx for OpenZFS file systems, the storage capacity target value must be * at least 10 percent greater than the current storage capacity value. For more * information, see Managing * storage capacity in the FSx for OpenZFS User Guide.
For * Windows file systems, the storage capacity target value must be at least 10 * percent greater than the current storage capacity value. To increase storage * capacity, the file system must have at least 16 MBps of throughput capacity. For * more information, see Managing * storage capacity in the Amazon FSxfor Windows File Server User * Guide.
For ONTAP file systems, the storage capacity target value must * be at least 10 percent greater than the current storage capacity value. For more * information, see Managing * storage capacity and provisioned IOPS in the Amazon FSx for NetApp ONTAP * User Guide.
*/ inline int GetStorageCapacity() const{ return m_storageCapacity; } /** *Use this parameter to increase the storage capacity of an FSx for Windows * File Server, FSx for Lustre, FSx for OpenZFS, or FSx for ONTAP file system. * Specifies the storage capacity target value, in GiB, to increase the storage * capacity for the file system that you're updating.
You can't make * a storage capacity increase request if there is an existing storage capacity * increase request in progress.
For Lustre file systems, the * storage capacity target value can be the following:
For
* SCRATCH_2
, PERSISTENT_1
, and PERSISTENT_2
* SSD
deployment types, valid values are in multiples of 2400 GiB. The
* value must be greater than the current storage capacity.
For
* PERSISTENT HDD
file systems, valid values are multiples of 6000 GiB
* for 12-MBps throughput per TiB file systems and multiples of 1800 GiB for
* 40-MBps throughput per TiB file systems. The values must be greater than the
* current storage capacity.
For SCRATCH_1
file
* systems, you can't increase the storage capacity.
For more * information, see Managing * storage and throughput capacity in the FSx for Lustre User Guide.
*For FSx for OpenZFS file systems, the storage capacity target value must be * at least 10 percent greater than the current storage capacity value. For more * information, see Managing * storage capacity in the FSx for OpenZFS User Guide.
For * Windows file systems, the storage capacity target value must be at least 10 * percent greater than the current storage capacity value. To increase storage * capacity, the file system must have at least 16 MBps of throughput capacity. For * more information, see Managing * storage capacity in the Amazon FSxfor Windows File Server User * Guide.
For ONTAP file systems, the storage capacity target value must * be at least 10 percent greater than the current storage capacity value. For more * information, see Managing * storage capacity and provisioned IOPS in the Amazon FSx for NetApp ONTAP * User Guide.
*/ inline bool StorageCapacityHasBeenSet() const { return m_storageCapacityHasBeenSet; } /** *Use this parameter to increase the storage capacity of an FSx for Windows * File Server, FSx for Lustre, FSx for OpenZFS, or FSx for ONTAP file system. * Specifies the storage capacity target value, in GiB, to increase the storage * capacity for the file system that you're updating.
You can't make * a storage capacity increase request if there is an existing storage capacity * increase request in progress.
For Lustre file systems, the * storage capacity target value can be the following:
For
* SCRATCH_2
, PERSISTENT_1
, and PERSISTENT_2
* SSD
deployment types, valid values are in multiples of 2400 GiB. The
* value must be greater than the current storage capacity.
For
* PERSISTENT HDD
file systems, valid values are multiples of 6000 GiB
* for 12-MBps throughput per TiB file systems and multiples of 1800 GiB for
* 40-MBps throughput per TiB file systems. The values must be greater than the
* current storage capacity.
For SCRATCH_1
file
* systems, you can't increase the storage capacity.
For more * information, see Managing * storage and throughput capacity in the FSx for Lustre User Guide.
*For FSx for OpenZFS file systems, the storage capacity target value must be * at least 10 percent greater than the current storage capacity value. For more * information, see Managing * storage capacity in the FSx for OpenZFS User Guide.
For * Windows file systems, the storage capacity target value must be at least 10 * percent greater than the current storage capacity value. To increase storage * capacity, the file system must have at least 16 MBps of throughput capacity. For * more information, see Managing * storage capacity in the Amazon FSxfor Windows File Server User * Guide.
For ONTAP file systems, the storage capacity target value must * be at least 10 percent greater than the current storage capacity value. For more * information, see Managing * storage capacity and provisioned IOPS in the Amazon FSx for NetApp ONTAP * User Guide.
*/ inline void SetStorageCapacity(int value) { m_storageCapacityHasBeenSet = true; m_storageCapacity = value; } /** *Use this parameter to increase the storage capacity of an FSx for Windows * File Server, FSx for Lustre, FSx for OpenZFS, or FSx for ONTAP file system. * Specifies the storage capacity target value, in GiB, to increase the storage * capacity for the file system that you're updating.
You can't make * a storage capacity increase request if there is an existing storage capacity * increase request in progress.
For Lustre file systems, the * storage capacity target value can be the following:
For
* SCRATCH_2
, PERSISTENT_1
, and PERSISTENT_2
* SSD
deployment types, valid values are in multiples of 2400 GiB. The
* value must be greater than the current storage capacity.
For
* PERSISTENT HDD
file systems, valid values are multiples of 6000 GiB
* for 12-MBps throughput per TiB file systems and multiples of 1800 GiB for
* 40-MBps throughput per TiB file systems. The values must be greater than the
* current storage capacity.
For SCRATCH_1
file
* systems, you can't increase the storage capacity.
For more * information, see Managing * storage and throughput capacity in the FSx for Lustre User Guide.
*For FSx for OpenZFS file systems, the storage capacity target value must be * at least 10 percent greater than the current storage capacity value. For more * information, see Managing * storage capacity in the FSx for OpenZFS User Guide.
For * Windows file systems, the storage capacity target value must be at least 10 * percent greater than the current storage capacity value. To increase storage * capacity, the file system must have at least 16 MBps of throughput capacity. For * more information, see Managing * storage capacity in the Amazon FSxfor Windows File Server User * Guide.
For ONTAP file systems, the storage capacity target value must * be at least 10 percent greater than the current storage capacity value. For more * information, see Managing * storage capacity and provisioned IOPS in the Amazon FSx for NetApp ONTAP * User Guide.
*/ inline UpdateFileSystemRequest& WithStorageCapacity(int value) { SetStorageCapacity(value); return *this;} /** *The configuration updates for an Amazon FSx for Windows File Server file * system.
*/ inline const UpdateFileSystemWindowsConfiguration& GetWindowsConfiguration() const{ return m_windowsConfiguration; } /** *The configuration updates for an Amazon FSx for Windows File Server file * system.
*/ inline bool WindowsConfigurationHasBeenSet() const { return m_windowsConfigurationHasBeenSet; } /** *The configuration updates for an Amazon FSx for Windows File Server file * system.
*/ inline void SetWindowsConfiguration(const UpdateFileSystemWindowsConfiguration& value) { m_windowsConfigurationHasBeenSet = true; m_windowsConfiguration = value; } /** *The configuration updates for an Amazon FSx for Windows File Server file * system.
*/ inline void SetWindowsConfiguration(UpdateFileSystemWindowsConfiguration&& value) { m_windowsConfigurationHasBeenSet = true; m_windowsConfiguration = std::move(value); } /** *The configuration updates for an Amazon FSx for Windows File Server file * system.
*/ inline UpdateFileSystemRequest& WithWindowsConfiguration(const UpdateFileSystemWindowsConfiguration& value) { SetWindowsConfiguration(value); return *this;} /** *The configuration updates for an Amazon FSx for Windows File Server file * system.
*/ inline UpdateFileSystemRequest& WithWindowsConfiguration(UpdateFileSystemWindowsConfiguration&& value) { SetWindowsConfiguration(std::move(value)); return *this;} inline const UpdateFileSystemLustreConfiguration& GetLustreConfiguration() const{ return m_lustreConfiguration; } inline bool LustreConfigurationHasBeenSet() const { return m_lustreConfigurationHasBeenSet; } inline void SetLustreConfiguration(const UpdateFileSystemLustreConfiguration& value) { m_lustreConfigurationHasBeenSet = true; m_lustreConfiguration = value; } inline void SetLustreConfiguration(UpdateFileSystemLustreConfiguration&& value) { m_lustreConfigurationHasBeenSet = true; m_lustreConfiguration = std::move(value); } inline UpdateFileSystemRequest& WithLustreConfiguration(const UpdateFileSystemLustreConfiguration& value) { SetLustreConfiguration(value); return *this;} inline UpdateFileSystemRequest& WithLustreConfiguration(UpdateFileSystemLustreConfiguration&& value) { SetLustreConfiguration(std::move(value)); return *this;} inline const UpdateFileSystemOntapConfiguration& GetOntapConfiguration() const{ return m_ontapConfiguration; } inline bool OntapConfigurationHasBeenSet() const { return m_ontapConfigurationHasBeenSet; } inline void SetOntapConfiguration(const UpdateFileSystemOntapConfiguration& value) { m_ontapConfigurationHasBeenSet = true; m_ontapConfiguration = value; } inline void SetOntapConfiguration(UpdateFileSystemOntapConfiguration&& value) { m_ontapConfigurationHasBeenSet = true; m_ontapConfiguration = std::move(value); } inline UpdateFileSystemRequest& WithOntapConfiguration(const UpdateFileSystemOntapConfiguration& value) { SetOntapConfiguration(value); return *this;} inline UpdateFileSystemRequest& WithOntapConfiguration(UpdateFileSystemOntapConfiguration&& value) { SetOntapConfiguration(std::move(value)); return *this;} /** *The configuration updates for an FSx for OpenZFS file system.
*/ inline const UpdateFileSystemOpenZFSConfiguration& GetOpenZFSConfiguration() const{ return m_openZFSConfiguration; } /** *The configuration updates for an FSx for OpenZFS file system.
*/ inline bool OpenZFSConfigurationHasBeenSet() const { return m_openZFSConfigurationHasBeenSet; } /** *The configuration updates for an FSx for OpenZFS file system.
*/ inline void SetOpenZFSConfiguration(const UpdateFileSystemOpenZFSConfiguration& value) { m_openZFSConfigurationHasBeenSet = true; m_openZFSConfiguration = value; } /** *The configuration updates for an FSx for OpenZFS file system.
*/ inline void SetOpenZFSConfiguration(UpdateFileSystemOpenZFSConfiguration&& value) { m_openZFSConfigurationHasBeenSet = true; m_openZFSConfiguration = std::move(value); } /** *The configuration updates for an FSx for OpenZFS file system.
*/ inline UpdateFileSystemRequest& WithOpenZFSConfiguration(const UpdateFileSystemOpenZFSConfiguration& value) { SetOpenZFSConfiguration(value); return *this;} /** *The configuration updates for an FSx for OpenZFS file system.
*/ inline UpdateFileSystemRequest& WithOpenZFSConfiguration(UpdateFileSystemOpenZFSConfiguration&& value) { SetOpenZFSConfiguration(std::move(value)); return *this;} private: Aws::String m_fileSystemId; bool m_fileSystemIdHasBeenSet = false; Aws::String m_clientRequestToken; bool m_clientRequestTokenHasBeenSet = false; int m_storageCapacity; bool m_storageCapacityHasBeenSet = false; UpdateFileSystemWindowsConfiguration m_windowsConfiguration; bool m_windowsConfigurationHasBeenSet = false; UpdateFileSystemLustreConfiguration m_lustreConfiguration; bool m_lustreConfigurationHasBeenSet = false; UpdateFileSystemOntapConfiguration m_ontapConfiguration; bool m_ontapConfigurationHasBeenSet = false; UpdateFileSystemOpenZFSConfiguration m_openZFSConfiguration; bool m_openZFSConfigurationHasBeenSet = false; }; } // namespace Model } // namespace FSx } // namespace Aws