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/Tag.h>
19#include <aws/core/utils/UUID.h>
58 template<
typename ClientRequestTokenT = Aws::String>
59 void SetClientRequestToken(ClientRequestTokenT&& value) { m_clientRequestTokenHasBeenSet =
true; m_clientRequestToken = std::forward<ClientRequestTokenT>(value); }
60 template<
typename ClientRequestTokenT = Aws::String>
103 inline void SetStorageCapacity(
int value) { m_storageCapacityHasBeenSet =
true; m_storageCapacity = value; }
157 template<
typename SubnetIdsT = Aws::Vector<Aws::String>>
158 void SetSubnetIds(SubnetIdsT&& value) { m_subnetIdsHasBeenSet =
true; m_subnetIds = std::forward<SubnetIdsT>(value); }
159 template<
typename SubnetIdsT = Aws::Vector<Aws::String>>
161 template<
typename SubnetIdsT = Aws::String>
175 template<
typename SecurityGroupIdsT = Aws::Vector<Aws::String>>
176 void SetSecurityGroupIds(SecurityGroupIdsT&& value) { m_securityGroupIdsHasBeenSet =
true; m_securityGroupIds = std::forward<SecurityGroupIdsT>(value); }
177 template<
typename SecurityGroupIdsT = Aws::Vector<Aws::String>>
179 template<
typename SecurityGroupIdsT = Aws::String>
190 template<
typename TagsT = Aws::Vector<Tag>>
191 void SetTags(TagsT&& value) { m_tagsHasBeenSet =
true; m_tags = std::forward<TagsT>(value); }
192 template<
typename TagsT = Aws::Vector<Tag>>
194 template<
typename TagsT = Tag>
202 template<
typename KmsKeyIdT = Aws::String>
203 void SetKmsKeyId(KmsKeyIdT&& value) { m_kmsKeyIdHasBeenSet =
true; m_kmsKeyId = std::forward<KmsKeyIdT>(value); }
204 template<
typename KmsKeyIdT = Aws::String>
215 template<
typename WindowsConfigurationT = CreateFileSystemWindowsConfiguration>
216 void SetWindowsConfiguration(WindowsConfigurationT&& value) { m_windowsConfigurationHasBeenSet =
true; m_windowsConfiguration = std::forward<WindowsConfigurationT>(value); }
217 template<
typename WindowsConfigurationT = CreateFileSystemWindowsConfiguration>
225 template<
typename LustreConfigurationT = CreateFileSystemLustreConfiguration>
226 void SetLustreConfiguration(LustreConfigurationT&& value) { m_lustreConfigurationHasBeenSet =
true; m_lustreConfiguration = std::forward<LustreConfigurationT>(value); }
227 template<
typename LustreConfigurationT = CreateFileSystemLustreConfiguration>
235 template<
typename OntapConfigurationT = CreateFileSystemOntapConfiguration>
236 void SetOntapConfiguration(OntapConfigurationT&& value) { m_ontapConfigurationHasBeenSet =
true; m_ontapConfiguration = std::forward<OntapConfigurationT>(value); }
237 template<
typename OntapConfigurationT = CreateFileSystemOntapConfiguration>
259 template<
typename FileSystemTypeVersionT = Aws::String>
260 void SetFileSystemTypeVersion(FileSystemTypeVersionT&& value) { m_fileSystemTypeVersionHasBeenSet =
true; m_fileSystemTypeVersion = std::forward<FileSystemTypeVersionT>(value); }
261 template<
typename FileSystemTypeVersionT = Aws::String>
271 template<
typename OpenZFSConfigurationT = CreateFileSystemOpenZFSConfiguration>
272 void SetOpenZFSConfiguration(OpenZFSConfigurationT&& value) { m_openZFSConfigurationHasBeenSet =
true; m_openZFSConfiguration = std::forward<OpenZFSConfigurationT>(value); }
273 template<
typename OpenZFSConfigurationT = CreateFileSystemOpenZFSConfiguration>
279 bool m_clientRequestTokenHasBeenSet =
true;
282 bool m_fileSystemTypeHasBeenSet =
false;
284 int m_storageCapacity{0};
285 bool m_storageCapacityHasBeenSet =
false;
288 bool m_storageTypeHasBeenSet =
false;
291 bool m_subnetIdsHasBeenSet =
false;
294 bool m_securityGroupIdsHasBeenSet =
false;
297 bool m_tagsHasBeenSet =
false;
300 bool m_kmsKeyIdHasBeenSet =
false;
302 CreateFileSystemWindowsConfiguration m_windowsConfiguration;
303 bool m_windowsConfigurationHasBeenSet =
false;
305 CreateFileSystemLustreConfiguration m_lustreConfiguration;
306 bool m_lustreConfigurationHasBeenSet =
false;
308 CreateFileSystemOntapConfiguration m_ontapConfiguration;
309 bool m_ontapConfigurationHasBeenSet =
false;
312 bool m_fileSystemTypeVersionHasBeenSet =
false;
314 CreateFileSystemOpenZFSConfiguration m_openZFSConfiguration;
315 bool m_openZFSConfigurationHasBeenSet =
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
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)
CreateFileSystemRequest & AddSecurityGroupIds(SecurityGroupIdsT &&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)
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