7#include <aws/fsx/FSx_EXPORTS.h>
8#include <aws/fsx/FSxRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/fsx/model/FileSystemType.h>
11#include <aws/fsx/model/StorageType.h>
12#include <aws/core/utils/memory/stl/AWSVector.h>
13#include <aws/fsx/model/CreateFileSystemWindowsConfiguration.h>
14#include <aws/fsx/model/CreateFileSystemLustreConfiguration.h>
15#include <aws/fsx/model/CreateFileSystemOntapConfiguration.h>
16#include <aws/fsx/model/CreateFileSystemOpenZFSConfiguration.h>
17#include <aws/fsx/model/NetworkType.h>
18#include <aws/fsx/model/Tag.h>
20#include <aws/core/utils/UUID.h>
59 template<
typename ClientRequestTokenT = Aws::String>
60 void SetClientRequestToken(ClientRequestTokenT&& value) { m_clientRequestTokenHasBeenSet =
true; m_clientRequestToken = std::forward<ClientRequestTokenT>(value); }
61 template<
typename ClientRequestTokenT = Aws::String>
104 inline void SetStorageCapacity(
int value) { m_storageCapacityHasBeenSet =
true; m_storageCapacity = value; }
158 template<
typename SubnetIdsT = Aws::Vector<Aws::String>>
159 void SetSubnetIds(SubnetIdsT&& value) { m_subnetIdsHasBeenSet =
true; m_subnetIds = std::forward<SubnetIdsT>(value); }
160 template<
typename SubnetIdsT = Aws::Vector<Aws::String>>
162 template<
typename SubnetIdsT = Aws::String>
176 template<
typename SecurityGroupIdsT = Aws::Vector<Aws::String>>
177 void SetSecurityGroupIds(SecurityGroupIdsT&& value) { m_securityGroupIdsHasBeenSet =
true; m_securityGroupIds = std::forward<SecurityGroupIdsT>(value); }
178 template<
typename SecurityGroupIdsT = Aws::Vector<Aws::String>>
180 template<
typename SecurityGroupIdsT = Aws::String>
191 template<
typename TagsT = Aws::Vector<Tag>>
192 void SetTags(TagsT&& value) { m_tagsHasBeenSet =
true; m_tags = std::forward<TagsT>(value); }
193 template<
typename TagsT = Aws::Vector<Tag>>
195 template<
typename TagsT = Tag>
203 template<
typename KmsKeyIdT = Aws::String>
204 void SetKmsKeyId(KmsKeyIdT&& value) { m_kmsKeyIdHasBeenSet =
true; m_kmsKeyId = std::forward<KmsKeyIdT>(value); }
205 template<
typename KmsKeyIdT = Aws::String>
216 template<
typename WindowsConfigurationT = CreateFileSystemWindowsConfiguration>
217 void SetWindowsConfiguration(WindowsConfigurationT&& value) { m_windowsConfigurationHasBeenSet =
true; m_windowsConfiguration = std::forward<WindowsConfigurationT>(value); }
218 template<
typename WindowsConfigurationT = CreateFileSystemWindowsConfiguration>
226 template<
typename LustreConfigurationT = CreateFileSystemLustreConfiguration>
227 void SetLustreConfiguration(LustreConfigurationT&& value) { m_lustreConfigurationHasBeenSet =
true; m_lustreConfiguration = std::forward<LustreConfigurationT>(value); }
228 template<
typename LustreConfigurationT = CreateFileSystemLustreConfiguration>
236 template<
typename OntapConfigurationT = CreateFileSystemOntapConfiguration>
237 void SetOntapConfiguration(OntapConfigurationT&& value) { m_ontapConfigurationHasBeenSet =
true; m_ontapConfiguration = std::forward<OntapConfigurationT>(value); }
238 template<
typename OntapConfigurationT = CreateFileSystemOntapConfiguration>
260 template<
typename FileSystemTypeVersionT = Aws::String>
261 void SetFileSystemTypeVersion(FileSystemTypeVersionT&& value) { m_fileSystemTypeVersionHasBeenSet =
true; m_fileSystemTypeVersion = std::forward<FileSystemTypeVersionT>(value); }
262 template<
typename FileSystemTypeVersionT = Aws::String>
272 template<
typename OpenZFSConfigurationT = CreateFileSystemOpenZFSConfiguration>
273 void SetOpenZFSConfiguration(OpenZFSConfigurationT&& value) { m_openZFSConfigurationHasBeenSet =
true; m_openZFSConfiguration = std::forward<OpenZFSConfigurationT>(value); }
274 template<
typename OpenZFSConfigurationT = CreateFileSystemOpenZFSConfiguration>
293 bool m_clientRequestTokenHasBeenSet =
true;
296 bool m_fileSystemTypeHasBeenSet =
false;
298 int m_storageCapacity{0};
299 bool m_storageCapacityHasBeenSet =
false;
302 bool m_storageTypeHasBeenSet =
false;
305 bool m_subnetIdsHasBeenSet =
false;
308 bool m_securityGroupIdsHasBeenSet =
false;
311 bool m_tagsHasBeenSet =
false;
314 bool m_kmsKeyIdHasBeenSet =
false;
316 CreateFileSystemWindowsConfiguration m_windowsConfiguration;
317 bool m_windowsConfigurationHasBeenSet =
false;
319 CreateFileSystemLustreConfiguration m_lustreConfiguration;
320 bool m_lustreConfigurationHasBeenSet =
false;
322 CreateFileSystemOntapConfiguration m_ontapConfiguration;
323 bool m_ontapConfigurationHasBeenSet =
false;
326 bool m_fileSystemTypeVersionHasBeenSet =
false;
328 CreateFileSystemOpenZFSConfiguration m_openZFSConfiguration;
329 bool m_openZFSConfigurationHasBeenSet =
false;
332 bool m_networkTypeHasBeenSet =
false;
CreateFileSystemRequest & WithTags(TagsT &&value)
bool OpenZFSConfigurationHasBeenSet() const
bool ClientRequestTokenHasBeenSet() const
const Aws::String & GetClientRequestToken() const
CreateFileSystemRequest & WithSubnetIds(SubnetIdsT &&value)
AWS_FSX_API Aws::String SerializePayload() const override
NetworkType GetNetworkType() const
void SetTags(TagsT &&value)
void SetStorageType(StorageType value)
bool WindowsConfigurationHasBeenSet() const
CreateFileSystemRequest & AddTags(TagsT &&value)
bool StorageCapacityHasBeenSet() const
bool SubnetIdsHasBeenSet() const
bool FileSystemTypeVersionHasBeenSet() const
CreateFileSystemRequest & WithLustreConfiguration(LustreConfigurationT &&value)
const Aws::Vector< Aws::String > & GetSubnetIds() const
const CreateFileSystemLustreConfiguration & GetLustreConfiguration() const
void SetClientRequestToken(ClientRequestTokenT &&value)
void SetFileSystemType(FileSystemType value)
bool NetworkTypeHasBeenSet() const
CreateFileSystemRequest & AddSecurityGroupIds(SecurityGroupIdsT &&value)
void SetNetworkType(NetworkType value)
AWS_FSX_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
bool SecurityGroupIdsHasBeenSet() const
void SetStorageCapacity(int value)
void SetLustreConfiguration(LustreConfigurationT &&value)
virtual const char * GetServiceRequestName() const override
CreateFileSystemRequest & WithFileSystemType(FileSystemType value)
CreateFileSystemRequest & WithSecurityGroupIds(SecurityGroupIdsT &&value)
CreateFileSystemRequest & WithNetworkType(NetworkType value)
void SetOntapConfiguration(OntapConfigurationT &&value)
void SetSecurityGroupIds(SecurityGroupIdsT &&value)
void SetWindowsConfiguration(WindowsConfigurationT &&value)
bool FileSystemTypeHasBeenSet() const
const Aws::String & GetKmsKeyId() const
void SetSubnetIds(SubnetIdsT &&value)
void SetOpenZFSConfiguration(OpenZFSConfigurationT &&value)
CreateFileSystemRequest & WithOpenZFSConfiguration(OpenZFSConfigurationT &&value)
StorageType GetStorageType() const
bool TagsHasBeenSet() const
void SetFileSystemTypeVersion(FileSystemTypeVersionT &&value)
CreateFileSystemRequest & AddSubnetIds(SubnetIdsT &&value)
CreateFileSystemRequest & WithStorageType(StorageType value)
CreateFileSystemRequest & WithKmsKeyId(KmsKeyIdT &&value)
AWS_FSX_API CreateFileSystemRequest()=default
const Aws::String & GetFileSystemTypeVersion() const
FileSystemType GetFileSystemType() const
CreateFileSystemRequest & WithClientRequestToken(ClientRequestTokenT &&value)
const Aws::Vector< Aws::String > & GetSecurityGroupIds() const
const CreateFileSystemWindowsConfiguration & GetWindowsConfiguration() const
int GetStorageCapacity() const
bool StorageTypeHasBeenSet() const
bool KmsKeyIdHasBeenSet() const
bool OntapConfigurationHasBeenSet() const
void SetKmsKeyId(KmsKeyIdT &&value)
const CreateFileSystemOntapConfiguration & GetOntapConfiguration() const
CreateFileSystemRequest & WithStorageCapacity(int value)
CreateFileSystemRequest & WithOntapConfiguration(OntapConfigurationT &&value)
CreateFileSystemRequest & WithFileSystemTypeVersion(FileSystemTypeVersionT &&value)
const CreateFileSystemOpenZFSConfiguration & GetOpenZFSConfiguration() const
CreateFileSystemRequest & WithWindowsConfiguration(WindowsConfigurationT &&value)
bool LustreConfigurationHasBeenSet() const
const Aws::Vector< Tag > & GetTags() const
static Aws::Utils::UUID PseudoRandomUUID()
Aws::Map< Aws::String, Aws::String > HeaderValueCollection
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector