/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include The request object used to create a new Amazon FSx file system.See
* Also:
AWS
* API Reference
A string of up to 64 ASCII characters that Amazon FSx uses to ensure * idempotent creation. This string is automatically filled on your behalf when you * use the AWS Command Line Interface (AWS CLI) or an AWS SDK.
*/ inline const Aws::String& GetClientRequestToken() const{ return m_clientRequestToken; } /** *A string of up to 64 ASCII characters that Amazon FSx uses to ensure * idempotent creation. This string is automatically filled on your behalf when you * use the AWS Command Line Interface (AWS CLI) or an AWS SDK.
*/ inline bool ClientRequestTokenHasBeenSet() const { return m_clientRequestTokenHasBeenSet; } /** *A string of up to 64 ASCII characters that Amazon FSx uses to ensure * idempotent creation. This string is automatically filled on your behalf when you * use the AWS Command Line Interface (AWS CLI) or an AWS SDK.
*/ inline void SetClientRequestToken(const Aws::String& value) { m_clientRequestTokenHasBeenSet = true; m_clientRequestToken = value; } /** *A string of up to 64 ASCII characters that Amazon FSx uses to ensure * idempotent creation. This string is automatically filled on your behalf when you * use the AWS Command Line Interface (AWS CLI) or an AWS SDK.
*/ inline void SetClientRequestToken(Aws::String&& value) { m_clientRequestTokenHasBeenSet = true; m_clientRequestToken = std::move(value); } /** *A string of up to 64 ASCII characters that Amazon FSx uses to ensure * idempotent creation. This string is automatically filled on your behalf when you * use the AWS Command Line Interface (AWS CLI) or an AWS SDK.
*/ inline void SetClientRequestToken(const char* value) { m_clientRequestTokenHasBeenSet = true; m_clientRequestToken.assign(value); } /** *A string of up to 64 ASCII characters that Amazon FSx uses to ensure * idempotent creation. This string is automatically filled on your behalf when you * use the AWS Command Line Interface (AWS CLI) or an AWS SDK.
*/ inline CreateFileSystemRequest& WithClientRequestToken(const Aws::String& value) { SetClientRequestToken(value); return *this;} /** *A string of up to 64 ASCII characters that Amazon FSx uses to ensure * idempotent creation. This string is automatically filled on your behalf when you * use the AWS Command Line Interface (AWS CLI) or an AWS SDK.
*/ inline CreateFileSystemRequest& WithClientRequestToken(Aws::String&& value) { SetClientRequestToken(std::move(value)); return *this;} /** *A string of up to 64 ASCII characters that Amazon FSx uses to ensure * idempotent creation. This string is automatically filled on your behalf when you * use the AWS Command Line Interface (AWS CLI) or an AWS SDK.
*/ inline CreateFileSystemRequest& WithClientRequestToken(const char* value) { SetClientRequestToken(value); return *this;} /** *The type of Amazon FSx file system to create, either WINDOWS or
* LUSTRE.
The type of Amazon FSx file system to create, either WINDOWS or
* LUSTRE.
The type of Amazon FSx file system to create, either WINDOWS or
* LUSTRE.
The type of Amazon FSx file system to create, either WINDOWS or
* LUSTRE.
The type of Amazon FSx file system to create, either WINDOWS or
* LUSTRE.
The type of Amazon FSx file system to create, either WINDOWS or
* LUSTRE.
Sets the storage capacity of the file system that you're creating.
For * Lustre file systems:
For SCRATCH_2 and
* PERSISTENT_1 SSD deployment types, valid values are 1200 GiB, 2400
* GiB, and increments of 2400 GiB.
For PERSISTENT
* HDD file systems, valid values are increments of 6000 GiB for 12 MB/s/TiB
* file systems and increments of 1800 GiB for 40 MB/s/TiB file systems.
For SCRATCH_1 deployment type, valid values are 1200 GiB,
* 2400 GiB, and increments of 3600 GiB.
For Windows file * systems:
If StorageType=SSD, valid values are 32
* GiB - 65,536 GiB (64 TiB).
If StorageType=HDD,
* valid values are 2000 GiB - 65,536 GiB (64 TiB).
Sets the storage capacity of the file system that you're creating.
For * Lustre file systems:
For SCRATCH_2 and
* PERSISTENT_1 SSD deployment types, valid values are 1200 GiB, 2400
* GiB, and increments of 2400 GiB.
For PERSISTENT
* HDD file systems, valid values are increments of 6000 GiB for 12 MB/s/TiB
* file systems and increments of 1800 GiB for 40 MB/s/TiB file systems.
For SCRATCH_1 deployment type, valid values are 1200 GiB,
* 2400 GiB, and increments of 3600 GiB.
For Windows file * systems:
If StorageType=SSD, valid values are 32
* GiB - 65,536 GiB (64 TiB).
If StorageType=HDD,
* valid values are 2000 GiB - 65,536 GiB (64 TiB).
Sets the storage capacity of the file system that you're creating.
For * Lustre file systems:
For SCRATCH_2 and
* PERSISTENT_1 SSD deployment types, valid values are 1200 GiB, 2400
* GiB, and increments of 2400 GiB.
For PERSISTENT
* HDD file systems, valid values are increments of 6000 GiB for 12 MB/s/TiB
* file systems and increments of 1800 GiB for 40 MB/s/TiB file systems.
For SCRATCH_1 deployment type, valid values are 1200 GiB,
* 2400 GiB, and increments of 3600 GiB.
For Windows file * systems:
If StorageType=SSD, valid values are 32
* GiB - 65,536 GiB (64 TiB).
If StorageType=HDD,
* valid values are 2000 GiB - 65,536 GiB (64 TiB).
Sets the storage capacity of the file system that you're creating.
For * Lustre file systems:
For SCRATCH_2 and
* PERSISTENT_1 SSD deployment types, valid values are 1200 GiB, 2400
* GiB, and increments of 2400 GiB.
For PERSISTENT
* HDD file systems, valid values are increments of 6000 GiB for 12 MB/s/TiB
* file systems and increments of 1800 GiB for 40 MB/s/TiB file systems.
For SCRATCH_1 deployment type, valid values are 1200 GiB,
* 2400 GiB, and increments of 3600 GiB.
For Windows file * systems:
If StorageType=SSD, valid values are 32
* GiB - 65,536 GiB (64 TiB).
If StorageType=HDD,
* valid values are 2000 GiB - 65,536 GiB (64 TiB).
Sets the storage type for the file system you're creating. Valid values are
* SSD and HDD.
Set to SSD
* to use solid state drive storage. SSD is supported on all Windows and Lustre
* deployment types.
Set to HDD to use hard disk
* drive storage. HDD is supported on SINGLE_AZ_2 and
* MULTI_AZ_1 Windows file system deployment types, and on
* PERSISTENT Lustre file system deployment types.
Default value is SSD. For more information, see
* Storage Type Options in the Amazon FSx for Windows User Guide and Multiple
* Storage Options in the Amazon FSx for Lustre User Guide.
Sets the storage type for the file system you're creating. Valid values are
* SSD and HDD.
Set to SSD
* to use solid state drive storage. SSD is supported on all Windows and Lustre
* deployment types.
Set to HDD to use hard disk
* drive storage. HDD is supported on SINGLE_AZ_2 and
* MULTI_AZ_1 Windows file system deployment types, and on
* PERSISTENT Lustre file system deployment types.
Default value is SSD. For more information, see
* Storage Type Options in the Amazon FSx for Windows User Guide and Multiple
* Storage Options in the Amazon FSx for Lustre User Guide.
Sets the storage type for the file system you're creating. Valid values are
* SSD and HDD.
Set to SSD
* to use solid state drive storage. SSD is supported on all Windows and Lustre
* deployment types.
Set to HDD to use hard disk
* drive storage. HDD is supported on SINGLE_AZ_2 and
* MULTI_AZ_1 Windows file system deployment types, and on
* PERSISTENT Lustre file system deployment types.
Default value is SSD. For more information, see
* Storage Type Options in the Amazon FSx for Windows User Guide and Multiple
* Storage Options in the Amazon FSx for Lustre User Guide.
Sets the storage type for the file system you're creating. Valid values are
* SSD and HDD.
Set to SSD
* to use solid state drive storage. SSD is supported on all Windows and Lustre
* deployment types.
Set to HDD to use hard disk
* drive storage. HDD is supported on SINGLE_AZ_2 and
* MULTI_AZ_1 Windows file system deployment types, and on
* PERSISTENT Lustre file system deployment types.
Default value is SSD. For more information, see
* Storage Type Options in the Amazon FSx for Windows User Guide and Multiple
* Storage Options in the Amazon FSx for Lustre User Guide.
Sets the storage type for the file system you're creating. Valid values are
* SSD and HDD.
Set to SSD
* to use solid state drive storage. SSD is supported on all Windows and Lustre
* deployment types.
Set to HDD to use hard disk
* drive storage. HDD is supported on SINGLE_AZ_2 and
* MULTI_AZ_1 Windows file system deployment types, and on
* PERSISTENT Lustre file system deployment types.
Default value is SSD. For more information, see
* Storage Type Options in the Amazon FSx for Windows User Guide and Multiple
* Storage Options in the Amazon FSx for Lustre User Guide.
Sets the storage type for the file system you're creating. Valid values are
* SSD and HDD.
Set to SSD
* to use solid state drive storage. SSD is supported on all Windows and Lustre
* deployment types.
Set to HDD to use hard disk
* drive storage. HDD is supported on SINGLE_AZ_2 and
* MULTI_AZ_1 Windows file system deployment types, and on
* PERSISTENT Lustre file system deployment types.
Default value is SSD. For more information, see
* Storage Type Options in the Amazon FSx for Windows User Guide and Multiple
* Storage Options in the Amazon FSx for Lustre User Guide.
Specifies the IDs of the subnets that the file system will be accessible
* from. For Windows MULTI_AZ_1 file system deployment types, provide
* exactly two subnet IDs, one for the preferred file server and one for the
* standby file server. You specify one of these subnets as the preferred subnet
* using the WindowsConfiguration > PreferredSubnetID property.
For Windows SINGLE_AZ_1 and SINGLE_AZ_2 file system
* deployment types and Lustre file systems, provide exactly one subnet ID. The
* file server is launched in that subnet's Availability Zone.
Specifies the IDs of the subnets that the file system will be accessible
* from. For Windows MULTI_AZ_1 file system deployment types, provide
* exactly two subnet IDs, one for the preferred file server and one for the
* standby file server. You specify one of these subnets as the preferred subnet
* using the WindowsConfiguration > PreferredSubnetID property.
For Windows SINGLE_AZ_1 and SINGLE_AZ_2 file system
* deployment types and Lustre file systems, provide exactly one subnet ID. The
* file server is launched in that subnet's Availability Zone.
Specifies the IDs of the subnets that the file system will be accessible
* from. For Windows MULTI_AZ_1 file system deployment types, provide
* exactly two subnet IDs, one for the preferred file server and one for the
* standby file server. You specify one of these subnets as the preferred subnet
* using the WindowsConfiguration > PreferredSubnetID property.
For Windows SINGLE_AZ_1 and SINGLE_AZ_2 file system
* deployment types and Lustre file systems, provide exactly one subnet ID. The
* file server is launched in that subnet's Availability Zone.
Specifies the IDs of the subnets that the file system will be accessible
* from. For Windows MULTI_AZ_1 file system deployment types, provide
* exactly two subnet IDs, one for the preferred file server and one for the
* standby file server. You specify one of these subnets as the preferred subnet
* using the WindowsConfiguration > PreferredSubnetID property.
For Windows SINGLE_AZ_1 and SINGLE_AZ_2 file system
* deployment types and Lustre file systems, provide exactly one subnet ID. The
* file server is launched in that subnet's Availability Zone.
Specifies the IDs of the subnets that the file system will be accessible
* from. For Windows MULTI_AZ_1 file system deployment types, provide
* exactly two subnet IDs, one for the preferred file server and one for the
* standby file server. You specify one of these subnets as the preferred subnet
* using the WindowsConfiguration > PreferredSubnetID property.
For Windows SINGLE_AZ_1 and SINGLE_AZ_2 file system
* deployment types and Lustre file systems, provide exactly one subnet ID. The
* file server is launched in that subnet's Availability Zone.
Specifies the IDs of the subnets that the file system will be accessible
* from. For Windows MULTI_AZ_1 file system deployment types, provide
* exactly two subnet IDs, one for the preferred file server and one for the
* standby file server. You specify one of these subnets as the preferred subnet
* using the WindowsConfiguration > PreferredSubnetID property.
For Windows SINGLE_AZ_1 and SINGLE_AZ_2 file system
* deployment types and Lustre file systems, provide exactly one subnet ID. The
* file server is launched in that subnet's Availability Zone.
Specifies the IDs of the subnets that the file system will be accessible
* from. For Windows MULTI_AZ_1 file system deployment types, provide
* exactly two subnet IDs, one for the preferred file server and one for the
* standby file server. You specify one of these subnets as the preferred subnet
* using the WindowsConfiguration > PreferredSubnetID property.
For Windows SINGLE_AZ_1 and SINGLE_AZ_2 file system
* deployment types and Lustre file systems, provide exactly one subnet ID. The
* file server is launched in that subnet's Availability Zone.
Specifies the IDs of the subnets that the file system will be accessible
* from. For Windows MULTI_AZ_1 file system deployment types, provide
* exactly two subnet IDs, one for the preferred file server and one for the
* standby file server. You specify one of these subnets as the preferred subnet
* using the WindowsConfiguration > PreferredSubnetID property.
For Windows SINGLE_AZ_1 and SINGLE_AZ_2 file system
* deployment types and Lustre file systems, provide exactly one subnet ID. The
* file server is launched in that subnet's Availability Zone.
Specifies the IDs of the subnets that the file system will be accessible
* from. For Windows MULTI_AZ_1 file system deployment types, provide
* exactly two subnet IDs, one for the preferred file server and one for the
* standby file server. You specify one of these subnets as the preferred subnet
* using the WindowsConfiguration > PreferredSubnetID property.
For Windows SINGLE_AZ_1 and SINGLE_AZ_2 file system
* deployment types and Lustre file systems, provide exactly one subnet ID. The
* file server is launched in that subnet's Availability Zone.
A list of IDs specifying the security groups to apply to all network * interfaces created for file system access. This list isn't returned in later * requests to describe the file system.
*/ inline const Aws::VectorA list of IDs specifying the security groups to apply to all network * interfaces created for file system access. This list isn't returned in later * requests to describe the file system.
*/ inline bool SecurityGroupIdsHasBeenSet() const { return m_securityGroupIdsHasBeenSet; } /** *A list of IDs specifying the security groups to apply to all network * interfaces created for file system access. This list isn't returned in later * requests to describe the file system.
*/ inline void SetSecurityGroupIds(const Aws::VectorA list of IDs specifying the security groups to apply to all network * interfaces created for file system access. This list isn't returned in later * requests to describe the file system.
*/ inline void SetSecurityGroupIds(Aws::VectorA list of IDs specifying the security groups to apply to all network * interfaces created for file system access. This list isn't returned in later * requests to describe the file system.
*/ inline CreateFileSystemRequest& WithSecurityGroupIds(const Aws::VectorA list of IDs specifying the security groups to apply to all network * interfaces created for file system access. This list isn't returned in later * requests to describe the file system.
*/ inline CreateFileSystemRequest& WithSecurityGroupIds(Aws::VectorA list of IDs specifying the security groups to apply to all network * interfaces created for file system access. This list isn't returned in later * requests to describe the file system.
*/ inline CreateFileSystemRequest& AddSecurityGroupIds(const Aws::String& value) { m_securityGroupIdsHasBeenSet = true; m_securityGroupIds.push_back(value); return *this; } /** *A list of IDs specifying the security groups to apply to all network * interfaces created for file system access. This list isn't returned in later * requests to describe the file system.
*/ inline CreateFileSystemRequest& AddSecurityGroupIds(Aws::String&& value) { m_securityGroupIdsHasBeenSet = true; m_securityGroupIds.push_back(std::move(value)); return *this; } /** *A list of IDs specifying the security groups to apply to all network * interfaces created for file system access. This list isn't returned in later * requests to describe the file system.
*/ inline CreateFileSystemRequest& AddSecurityGroupIds(const char* value) { m_securityGroupIdsHasBeenSet = true; m_securityGroupIds.push_back(value); return *this; } /** *The tags to apply to the file system being created. The key value of the
* Name tag appears in the console as the file system name.
The tags to apply to the file system being created. The key value of the
* Name tag appears in the console as the file system name.
The tags to apply to the file system being created. The key value of the
* Name tag appears in the console as the file system name.
The tags to apply to the file system being created. The key value of the
* Name tag appears in the console as the file system name.
The tags to apply to the file system being created. The key value of the
* Name tag appears in the console as the file system name.
The tags to apply to the file system being created. The key value of the
* Name tag appears in the console as the file system name.
The tags to apply to the file system being created. The key value of the
* Name tag appears in the console as the file system name.
The tags to apply to the file system being created. The key value of the
* Name tag appears in the console as the file system name.
The Microsoft Windows configuration for the file system being created.
*/ inline const CreateFileSystemWindowsConfiguration& GetWindowsConfiguration() const{ return m_windowsConfiguration; } /** *The Microsoft Windows configuration for the file system being created.
*/ inline bool WindowsConfigurationHasBeenSet() const { return m_windowsConfigurationHasBeenSet; } /** *The Microsoft Windows configuration for the file system being created.
*/ inline void SetWindowsConfiguration(const CreateFileSystemWindowsConfiguration& value) { m_windowsConfigurationHasBeenSet = true; m_windowsConfiguration = value; } /** *The Microsoft Windows configuration for the file system being created.
*/ inline void SetWindowsConfiguration(CreateFileSystemWindowsConfiguration&& value) { m_windowsConfigurationHasBeenSet = true; m_windowsConfiguration = std::move(value); } /** *The Microsoft Windows configuration for the file system being created.
*/ inline CreateFileSystemRequest& WithWindowsConfiguration(const CreateFileSystemWindowsConfiguration& value) { SetWindowsConfiguration(value); return *this;} /** *The Microsoft Windows configuration for the file system being created.
*/ inline CreateFileSystemRequest& WithWindowsConfiguration(CreateFileSystemWindowsConfiguration&& value) { SetWindowsConfiguration(std::move(value)); return *this;} inline const CreateFileSystemLustreConfiguration& GetLustreConfiguration() const{ return m_lustreConfiguration; } inline bool LustreConfigurationHasBeenSet() const { return m_lustreConfigurationHasBeenSet; } inline void SetLustreConfiguration(const CreateFileSystemLustreConfiguration& value) { m_lustreConfigurationHasBeenSet = true; m_lustreConfiguration = value; } inline void SetLustreConfiguration(CreateFileSystemLustreConfiguration&& value) { m_lustreConfigurationHasBeenSet = true; m_lustreConfiguration = std::move(value); } inline CreateFileSystemRequest& WithLustreConfiguration(const CreateFileSystemLustreConfiguration& value) { SetLustreConfiguration(value); return *this;} inline CreateFileSystemRequest& WithLustreConfiguration(CreateFileSystemLustreConfiguration&& value) { SetLustreConfiguration(std::move(value)); return *this;} private: Aws::String m_clientRequestToken; bool m_clientRequestTokenHasBeenSet; FileSystemType m_fileSystemType; bool m_fileSystemTypeHasBeenSet; int m_storageCapacity; bool m_storageCapacityHasBeenSet; StorageType m_storageType; bool m_storageTypeHasBeenSet; Aws::Vector