AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
CreateFileSystemRequest.h
1
6#pragma once
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>
18#include <utility>
19#include <aws/core/utils/UUID.h>
20
21namespace Aws
22{
23namespace FSx
24{
25namespace Model
26{
27
35 {
36 public:
37 AWS_FSX_API CreateFileSystemRequest() = default;
38
39 // Service request name is the Operation name which will send this request out,
40 // each operation should has unique request name, so that we can get operation's name from this request.
41 // Note: this is not true for response, multiple operations may have the same response name,
42 // so we can not get operation's name from response.
43 inline virtual const char* GetServiceRequestName() const override { return "CreateFileSystem"; }
44
45 AWS_FSX_API Aws::String SerializePayload() const override;
46
48
49
51
56 inline const Aws::String& GetClientRequestToken() const { return m_clientRequestToken; }
57 inline bool ClientRequestTokenHasBeenSet() const { return m_clientRequestTokenHasBeenSet; }
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>
61 CreateFileSystemRequest& WithClientRequestToken(ClientRequestTokenT&& value) { SetClientRequestToken(std::forward<ClientRequestTokenT>(value)); return *this;}
63
65
70 inline FileSystemType GetFileSystemType() const { return m_fileSystemType; }
71 inline bool FileSystemTypeHasBeenSet() const { return m_fileSystemTypeHasBeenSet; }
72 inline void SetFileSystemType(FileSystemType value) { m_fileSystemTypeHasBeenSet = true; m_fileSystemType = value; }
75
77
101 inline int GetStorageCapacity() const { return m_storageCapacity; }
102 inline bool StorageCapacityHasBeenSet() const { return m_storageCapacityHasBeenSet; }
103 inline void SetStorageCapacity(int value) { m_storageCapacityHasBeenSet = true; m_storageCapacity = value; }
104 inline CreateFileSystemRequest& WithStorageCapacity(int value) { SetStorageCapacity(value); return *this;}
106
108
131 inline StorageType GetStorageType() const { return m_storageType; }
132 inline bool StorageTypeHasBeenSet() const { return m_storageTypeHasBeenSet; }
133 inline void SetStorageType(StorageType value) { m_storageTypeHasBeenSet = true; m_storageType = value; }
136
138
155 inline const Aws::Vector<Aws::String>& GetSubnetIds() const { return m_subnetIds; }
156 inline bool SubnetIdsHasBeenSet() const { return m_subnetIdsHasBeenSet; }
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>>
160 CreateFileSystemRequest& WithSubnetIds(SubnetIdsT&& value) { SetSubnetIds(std::forward<SubnetIdsT>(value)); return *this;}
161 template<typename SubnetIdsT = Aws::String>
162 CreateFileSystemRequest& AddSubnetIds(SubnetIdsT&& value) { m_subnetIdsHasBeenSet = true; m_subnetIds.emplace_back(std::forward<SubnetIdsT>(value)); return *this; }
164
166
173 inline const Aws::Vector<Aws::String>& GetSecurityGroupIds() const { return m_securityGroupIds; }
174 inline bool SecurityGroupIdsHasBeenSet() const { return m_securityGroupIdsHasBeenSet; }
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>>
178 CreateFileSystemRequest& WithSecurityGroupIds(SecurityGroupIdsT&& value) { SetSecurityGroupIds(std::forward<SecurityGroupIdsT>(value)); return *this;}
179 template<typename SecurityGroupIdsT = Aws::String>
180 CreateFileSystemRequest& AddSecurityGroupIds(SecurityGroupIdsT&& value) { m_securityGroupIdsHasBeenSet = true; m_securityGroupIds.emplace_back(std::forward<SecurityGroupIdsT>(value)); return *this; }
182
184
188 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
189 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
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>>
193 CreateFileSystemRequest& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
194 template<typename TagsT = Tag>
195 CreateFileSystemRequest& AddTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags.emplace_back(std::forward<TagsT>(value)); return *this; }
197
199
200 inline const Aws::String& GetKmsKeyId() const { return m_kmsKeyId; }
201 inline bool KmsKeyIdHasBeenSet() const { return m_kmsKeyIdHasBeenSet; }
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>
205 CreateFileSystemRequest& WithKmsKeyId(KmsKeyIdT&& value) { SetKmsKeyId(std::forward<KmsKeyIdT>(value)); return *this;}
207
209
213 inline const CreateFileSystemWindowsConfiguration& GetWindowsConfiguration() const { return m_windowsConfiguration; }
214 inline bool WindowsConfigurationHasBeenSet() const { return m_windowsConfigurationHasBeenSet; }
215 template<typename WindowsConfigurationT = CreateFileSystemWindowsConfiguration>
216 void SetWindowsConfiguration(WindowsConfigurationT&& value) { m_windowsConfigurationHasBeenSet = true; m_windowsConfiguration = std::forward<WindowsConfigurationT>(value); }
217 template<typename WindowsConfigurationT = CreateFileSystemWindowsConfiguration>
218 CreateFileSystemRequest& WithWindowsConfiguration(WindowsConfigurationT&& value) { SetWindowsConfiguration(std::forward<WindowsConfigurationT>(value)); return *this;}
220
222
223 inline const CreateFileSystemLustreConfiguration& GetLustreConfiguration() const { return m_lustreConfiguration; }
224 inline bool LustreConfigurationHasBeenSet() const { return m_lustreConfigurationHasBeenSet; }
225 template<typename LustreConfigurationT = CreateFileSystemLustreConfiguration>
226 void SetLustreConfiguration(LustreConfigurationT&& value) { m_lustreConfigurationHasBeenSet = true; m_lustreConfiguration = std::forward<LustreConfigurationT>(value); }
227 template<typename LustreConfigurationT = CreateFileSystemLustreConfiguration>
228 CreateFileSystemRequest& WithLustreConfiguration(LustreConfigurationT&& value) { SetLustreConfiguration(std::forward<LustreConfigurationT>(value)); return *this;}
230
232
233 inline const CreateFileSystemOntapConfiguration& GetOntapConfiguration() const { return m_ontapConfiguration; }
234 inline bool OntapConfigurationHasBeenSet() const { return m_ontapConfigurationHasBeenSet; }
235 template<typename OntapConfigurationT = CreateFileSystemOntapConfiguration>
236 void SetOntapConfiguration(OntapConfigurationT&& value) { m_ontapConfigurationHasBeenSet = true; m_ontapConfiguration = std::forward<OntapConfigurationT>(value); }
237 template<typename OntapConfigurationT = CreateFileSystemOntapConfiguration>
238 CreateFileSystemRequest& WithOntapConfiguration(OntapConfigurationT&& value) { SetOntapConfiguration(std::forward<OntapConfigurationT>(value)); return *this;}
240
242
257 inline const Aws::String& GetFileSystemTypeVersion() const { return m_fileSystemTypeVersion; }
258 inline bool FileSystemTypeVersionHasBeenSet() const { return m_fileSystemTypeVersionHasBeenSet; }
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>
262 CreateFileSystemRequest& WithFileSystemTypeVersion(FileSystemTypeVersionT&& value) { SetFileSystemTypeVersion(std::forward<FileSystemTypeVersionT>(value)); return *this;}
264
266
269 inline const CreateFileSystemOpenZFSConfiguration& GetOpenZFSConfiguration() const { return m_openZFSConfiguration; }
270 inline bool OpenZFSConfigurationHasBeenSet() const { return m_openZFSConfigurationHasBeenSet; }
271 template<typename OpenZFSConfigurationT = CreateFileSystemOpenZFSConfiguration>
272 void SetOpenZFSConfiguration(OpenZFSConfigurationT&& value) { m_openZFSConfigurationHasBeenSet = true; m_openZFSConfiguration = std::forward<OpenZFSConfigurationT>(value); }
273 template<typename OpenZFSConfigurationT = CreateFileSystemOpenZFSConfiguration>
274 CreateFileSystemRequest& WithOpenZFSConfiguration(OpenZFSConfigurationT&& value) { SetOpenZFSConfiguration(std::forward<OpenZFSConfigurationT>(value)); return *this;}
276 private:
277
278 Aws::String m_clientRequestToken{Aws::Utils::UUID::PseudoRandomUUID()};
279 bool m_clientRequestTokenHasBeenSet = true;
280
281 FileSystemType m_fileSystemType{FileSystemType::NOT_SET};
282 bool m_fileSystemTypeHasBeenSet = false;
283
284 int m_storageCapacity{0};
285 bool m_storageCapacityHasBeenSet = false;
286
287 StorageType m_storageType{StorageType::NOT_SET};
288 bool m_storageTypeHasBeenSet = false;
289
290 Aws::Vector<Aws::String> m_subnetIds;
291 bool m_subnetIdsHasBeenSet = false;
292
293 Aws::Vector<Aws::String> m_securityGroupIds;
294 bool m_securityGroupIdsHasBeenSet = false;
295
296 Aws::Vector<Tag> m_tags;
297 bool m_tagsHasBeenSet = false;
298
299 Aws::String m_kmsKeyId;
300 bool m_kmsKeyIdHasBeenSet = false;
301
302 CreateFileSystemWindowsConfiguration m_windowsConfiguration;
303 bool m_windowsConfigurationHasBeenSet = false;
304
305 CreateFileSystemLustreConfiguration m_lustreConfiguration;
306 bool m_lustreConfigurationHasBeenSet = false;
307
308 CreateFileSystemOntapConfiguration m_ontapConfiguration;
309 bool m_ontapConfigurationHasBeenSet = false;
310
311 Aws::String m_fileSystemTypeVersion;
312 bool m_fileSystemTypeVersionHasBeenSet = false;
313
314 CreateFileSystemOpenZFSConfiguration m_openZFSConfiguration;
315 bool m_openZFSConfigurationHasBeenSet = false;
316 };
317
318} // namespace Model
319} // namespace FSx
320} // namespace Aws
CreateFileSystemRequest & WithTags(TagsT &&value)
CreateFileSystemRequest & WithSubnetIds(SubnetIdsT &&value)
AWS_FSX_API Aws::String SerializePayload() const override
CreateFileSystemRequest & AddTags(TagsT &&value)
CreateFileSystemRequest & WithLustreConfiguration(LustreConfigurationT &&value)
const Aws::Vector< Aws::String > & GetSubnetIds() const
const CreateFileSystemLustreConfiguration & GetLustreConfiguration() const
void SetClientRequestToken(ClientRequestTokenT &&value)
CreateFileSystemRequest & AddSecurityGroupIds(SecurityGroupIdsT &&value)
AWS_FSX_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
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)
void SetOpenZFSConfiguration(OpenZFSConfigurationT &&value)
CreateFileSystemRequest & WithOpenZFSConfiguration(OpenZFSConfigurationT &&value)
void SetFileSystemTypeVersion(FileSystemTypeVersionT &&value)
CreateFileSystemRequest & AddSubnetIds(SubnetIdsT &&value)
CreateFileSystemRequest & WithStorageType(StorageType value)
CreateFileSystemRequest & WithKmsKeyId(KmsKeyIdT &&value)
AWS_FSX_API CreateFileSystemRequest()=default
CreateFileSystemRequest & WithClientRequestToken(ClientRequestTokenT &&value)
const Aws::Vector< Aws::String > & GetSecurityGroupIds() const
const CreateFileSystemWindowsConfiguration & GetWindowsConfiguration() const
const CreateFileSystemOntapConfiguration & GetOntapConfiguration() const
CreateFileSystemRequest & WithStorageCapacity(int value)
CreateFileSystemRequest & WithOntapConfiguration(OntapConfigurationT &&value)
CreateFileSystemRequest & WithFileSystemTypeVersion(FileSystemTypeVersionT &&value)
const CreateFileSystemOpenZFSConfiguration & GetOpenZFSConfiguration() const
CreateFileSystemRequest & WithWindowsConfiguration(WindowsConfigurationT &&value)
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