AWS SDK for C++

AWS SDK for C++ Version 1.11.844

Loading...
Searching...
No Matches
CreateReplicationConfigurationTemplateRequest.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSMap.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/mgn/MgnRequest.h>
11#include <aws/mgn/Mgn_EXPORTS.h>
12#include <aws/mgn/model/InternetProtocol.h>
13#include <aws/mgn/model/ReplicationConfigurationDataPlaneRouting.h>
14#include <aws/mgn/model/ReplicationConfigurationDefaultLargeStagingDiskType.h>
15#include <aws/mgn/model/ReplicationConfigurationEbsEncryption.h>
16#include <aws/mgn/model/StorageConfiguration.h>
17
18#include <utility>
19
20namespace Aws {
21namespace mgn {
22namespace Model {
23
27 public:
29
30 // Service request name is the Operation name which will send this request out,
31 // each operation should has unique request name, so that we can get operation's name from this request.
32 // Note: this is not true for response, multiple operations may have the same response name,
33 // so we can not get operation's name from response.
34 inline virtual const char* GetServiceRequestName() const override { return "CreateReplicationConfigurationTemplate"; }
35
36 AWS_MGN_API Aws::String SerializePayload() const override;
37
39
43 inline const Aws::String& GetStagingAreaSubnetId() const { return m_stagingAreaSubnetId; }
44 inline bool StagingAreaSubnetIdHasBeenSet() const { return m_stagingAreaSubnetIdHasBeenSet; }
45 template <typename StagingAreaSubnetIdT = Aws::String>
46 void SetStagingAreaSubnetId(StagingAreaSubnetIdT&& value) {
47 m_stagingAreaSubnetIdHasBeenSet = true;
48 m_stagingAreaSubnetId = std::forward<StagingAreaSubnetIdT>(value);
49 }
50 template <typename StagingAreaSubnetIdT = Aws::String>
52 SetStagingAreaSubnetId(std::forward<StagingAreaSubnetIdT>(value));
53 return *this;
54 }
56
58
62 inline bool GetAssociateDefaultSecurityGroup() const { return m_associateDefaultSecurityGroup; }
63 inline bool AssociateDefaultSecurityGroupHasBeenSet() const { return m_associateDefaultSecurityGroupHasBeenSet; }
64 inline void SetAssociateDefaultSecurityGroup(bool value) {
65 m_associateDefaultSecurityGroupHasBeenSet = true;
66 m_associateDefaultSecurityGroup = value;
67 }
70 return *this;
71 }
73
75
79 inline const Aws::Vector<Aws::String>& GetReplicationServersSecurityGroupsIDs() const { return m_replicationServersSecurityGroupsIDs; }
80 inline bool ReplicationServersSecurityGroupsIDsHasBeenSet() const { return m_replicationServersSecurityGroupsIDsHasBeenSet; }
81 template <typename ReplicationServersSecurityGroupsIDsT = Aws::Vector<Aws::String>>
82 void SetReplicationServersSecurityGroupsIDs(ReplicationServersSecurityGroupsIDsT&& value) {
83 m_replicationServersSecurityGroupsIDsHasBeenSet = true;
84 m_replicationServersSecurityGroupsIDs = std::forward<ReplicationServersSecurityGroupsIDsT>(value);
85 }
86 template <typename ReplicationServersSecurityGroupsIDsT = Aws::Vector<Aws::String>>
88 SetReplicationServersSecurityGroupsIDs(std::forward<ReplicationServersSecurityGroupsIDsT>(value));
89 return *this;
90 }
91 template <typename ReplicationServersSecurityGroupsIDsT = Aws::String>
93 m_replicationServersSecurityGroupsIDsHasBeenSet = true;
94 m_replicationServersSecurityGroupsIDs.emplace_back(std::forward<ReplicationServersSecurityGroupsIDsT>(value));
95 return *this;
96 }
98
100
104 inline const Aws::String& GetReplicationServerInstanceType() const { return m_replicationServerInstanceType; }
105 inline bool ReplicationServerInstanceTypeHasBeenSet() const { return m_replicationServerInstanceTypeHasBeenSet; }
106 template <typename ReplicationServerInstanceTypeT = Aws::String>
107 void SetReplicationServerInstanceType(ReplicationServerInstanceTypeT&& value) {
108 m_replicationServerInstanceTypeHasBeenSet = true;
109 m_replicationServerInstanceType = std::forward<ReplicationServerInstanceTypeT>(value);
110 }
111 template <typename ReplicationServerInstanceTypeT = Aws::String>
113 SetReplicationServerInstanceType(std::forward<ReplicationServerInstanceTypeT>(value));
114 return *this;
115 }
117
119
123 inline bool GetUseDedicatedReplicationServer() const { return m_useDedicatedReplicationServer; }
124 inline bool UseDedicatedReplicationServerHasBeenSet() const { return m_useDedicatedReplicationServerHasBeenSet; }
125 inline void SetUseDedicatedReplicationServer(bool value) {
126 m_useDedicatedReplicationServerHasBeenSet = true;
127 m_useDedicatedReplicationServer = value;
128 }
131 return *this;
132 }
134
136
141 return m_defaultLargeStagingDiskType;
142 }
143 inline bool DefaultLargeStagingDiskTypeHasBeenSet() const { return m_defaultLargeStagingDiskTypeHasBeenSet; }
145 m_defaultLargeStagingDiskTypeHasBeenSet = true;
146 m_defaultLargeStagingDiskType = value;
147 }
151 return *this;
152 }
154
156
160 inline ReplicationConfigurationEbsEncryption GetEbsEncryption() const { return m_ebsEncryption; }
161 inline bool EbsEncryptionHasBeenSet() const { return m_ebsEncryptionHasBeenSet; }
163 m_ebsEncryptionHasBeenSet = true;
164 m_ebsEncryption = value;
165 }
167 SetEbsEncryption(value);
168 return *this;
169 }
171
173
177 inline const Aws::String& GetEbsEncryptionKeyArn() const { return m_ebsEncryptionKeyArn; }
178 inline bool EbsEncryptionKeyArnHasBeenSet() const { return m_ebsEncryptionKeyArnHasBeenSet; }
179 template <typename EbsEncryptionKeyArnT = Aws::String>
180 void SetEbsEncryptionKeyArn(EbsEncryptionKeyArnT&& value) {
181 m_ebsEncryptionKeyArnHasBeenSet = true;
182 m_ebsEncryptionKeyArn = std::forward<EbsEncryptionKeyArnT>(value);
183 }
184 template <typename EbsEncryptionKeyArnT = Aws::String>
186 SetEbsEncryptionKeyArn(std::forward<EbsEncryptionKeyArnT>(value));
187 return *this;
188 }
190
192
196 inline long long GetBandwidthThrottling() const { return m_bandwidthThrottling; }
197 inline bool BandwidthThrottlingHasBeenSet() const { return m_bandwidthThrottlingHasBeenSet; }
198 inline void SetBandwidthThrottling(long long value) {
199 m_bandwidthThrottlingHasBeenSet = true;
200 m_bandwidthThrottling = value;
201 }
204 return *this;
205 }
207
209
213 inline ReplicationConfigurationDataPlaneRouting GetDataPlaneRouting() const { return m_dataPlaneRouting; }
214 inline bool DataPlaneRoutingHasBeenSet() const { return m_dataPlaneRoutingHasBeenSet; }
216 m_dataPlaneRoutingHasBeenSet = true;
217 m_dataPlaneRouting = value;
218 }
220 SetDataPlaneRouting(value);
221 return *this;
222 }
224
226
230 inline bool GetCreatePublicIP() const { return m_createPublicIP; }
231 inline bool CreatePublicIPHasBeenSet() const { return m_createPublicIPHasBeenSet; }
232 inline void SetCreatePublicIP(bool value) {
233 m_createPublicIPHasBeenSet = true;
234 m_createPublicIP = value;
235 }
237 SetCreatePublicIP(value);
238 return *this;
239 }
241
243
247 inline const Aws::Map<Aws::String, Aws::String>& GetStagingAreaTags() const { return m_stagingAreaTags; }
248 inline bool StagingAreaTagsHasBeenSet() const { return m_stagingAreaTagsHasBeenSet; }
249 template <typename StagingAreaTagsT = Aws::Map<Aws::String, Aws::String>>
250 void SetStagingAreaTags(StagingAreaTagsT&& value) {
251 m_stagingAreaTagsHasBeenSet = true;
252 m_stagingAreaTags = std::forward<StagingAreaTagsT>(value);
253 }
254 template <typename StagingAreaTagsT = Aws::Map<Aws::String, Aws::String>>
256 SetStagingAreaTags(std::forward<StagingAreaTagsT>(value));
257 return *this;
258 }
259 template <typename StagingAreaTagsKeyT = Aws::String, typename StagingAreaTagsValueT = Aws::String>
260 CreateReplicationConfigurationTemplateRequest& AddStagingAreaTags(StagingAreaTagsKeyT&& key, StagingAreaTagsValueT&& value) {
261 m_stagingAreaTagsHasBeenSet = true;
262 m_stagingAreaTags.emplace(std::forward<StagingAreaTagsKeyT>(key), std::forward<StagingAreaTagsValueT>(value));
263 return *this;
264 }
266
268
272 inline bool GetUseFipsEndpoint() const { return m_useFipsEndpoint; }
273 inline bool UseFipsEndpointHasBeenSet() const { return m_useFipsEndpointHasBeenSet; }
274 inline void SetUseFipsEndpoint(bool value) {
275 m_useFipsEndpointHasBeenSet = true;
276 m_useFipsEndpoint = value;
277 }
279 SetUseFipsEndpoint(value);
280 return *this;
281 }
283
285
288 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
289 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
290 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
291 void SetTags(TagsT&& value) {
292 m_tagsHasBeenSet = true;
293 m_tags = std::forward<TagsT>(value);
294 }
295 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
297 SetTags(std::forward<TagsT>(value));
298 return *this;
299 }
300 template <typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
301 CreateReplicationConfigurationTemplateRequest& AddTags(TagsKeyT&& key, TagsValueT&& value) {
302 m_tagsHasBeenSet = true;
303 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
304 return *this;
305 }
307
309
312 inline InternetProtocol GetInternetProtocol() const { return m_internetProtocol; }
313 inline bool InternetProtocolHasBeenSet() const { return m_internetProtocolHasBeenSet; }
315 m_internetProtocolHasBeenSet = true;
316 m_internetProtocol = value;
317 }
319 SetInternetProtocol(value);
320 return *this;
321 }
323
325
329 inline bool GetStoreSnapshotOnLocalZone() const { return m_storeSnapshotOnLocalZone; }
330 inline bool StoreSnapshotOnLocalZoneHasBeenSet() const { return m_storeSnapshotOnLocalZoneHasBeenSet; }
331 inline void SetStoreSnapshotOnLocalZone(bool value) {
332 m_storeSnapshotOnLocalZoneHasBeenSet = true;
333 m_storeSnapshotOnLocalZone = value;
334 }
337 return *this;
338 }
340
342
346 inline const StorageConfiguration& GetStorageConfiguration() const { return m_storageConfiguration; }
347 inline bool StorageConfigurationHasBeenSet() const { return m_storageConfigurationHasBeenSet; }
348 template <typename StorageConfigurationT = StorageConfiguration>
349 void SetStorageConfiguration(StorageConfigurationT&& value) {
350 m_storageConfigurationHasBeenSet = true;
351 m_storageConfiguration = std::forward<StorageConfigurationT>(value);
352 }
353 template <typename StorageConfigurationT = StorageConfiguration>
355 SetStorageConfiguration(std::forward<StorageConfigurationT>(value));
356 return *this;
357 }
359 private:
360 Aws::String m_stagingAreaSubnetId;
361
362 bool m_associateDefaultSecurityGroup{false};
363
364 Aws::Vector<Aws::String> m_replicationServersSecurityGroupsIDs;
365
366 Aws::String m_replicationServerInstanceType;
367
368 bool m_useDedicatedReplicationServer{false};
369
370 ReplicationConfigurationDefaultLargeStagingDiskType m_defaultLargeStagingDiskType{
372
374
375 Aws::String m_ebsEncryptionKeyArn;
376
377 long long m_bandwidthThrottling{0};
378
380
381 bool m_createPublicIP{false};
382
383 Aws::Map<Aws::String, Aws::String> m_stagingAreaTags;
384
385 bool m_useFipsEndpoint{false};
386
388
390
391 bool m_storeSnapshotOnLocalZone{false};
392
393 StorageConfiguration m_storageConfiguration;
394 bool m_stagingAreaSubnetIdHasBeenSet = false;
395 bool m_associateDefaultSecurityGroupHasBeenSet = false;
396 bool m_replicationServersSecurityGroupsIDsHasBeenSet = false;
397 bool m_replicationServerInstanceTypeHasBeenSet = false;
398 bool m_useDedicatedReplicationServerHasBeenSet = false;
399 bool m_defaultLargeStagingDiskTypeHasBeenSet = false;
400 bool m_ebsEncryptionHasBeenSet = false;
401 bool m_ebsEncryptionKeyArnHasBeenSet = false;
402 bool m_bandwidthThrottlingHasBeenSet = false;
403 bool m_dataPlaneRoutingHasBeenSet = false;
404 bool m_createPublicIPHasBeenSet = false;
405 bool m_stagingAreaTagsHasBeenSet = false;
406 bool m_useFipsEndpointHasBeenSet = false;
407 bool m_tagsHasBeenSet = false;
408 bool m_internetProtocolHasBeenSet = false;
409 bool m_storeSnapshotOnLocalZoneHasBeenSet = false;
410 bool m_storageConfigurationHasBeenSet = false;
411};
412
413} // namespace Model
414} // namespace mgn
415} // namespace Aws
CreateReplicationConfigurationTemplateRequest & WithDataPlaneRouting(ReplicationConfigurationDataPlaneRouting value)
void SetDefaultLargeStagingDiskType(ReplicationConfigurationDefaultLargeStagingDiskType value)
CreateReplicationConfigurationTemplateRequest & AddReplicationServersSecurityGroupsIDs(ReplicationServersSecurityGroupsIDsT &&value)
CreateReplicationConfigurationTemplateRequest & WithUseDedicatedReplicationServer(bool value)
CreateReplicationConfigurationTemplateRequest & WithReplicationServersSecurityGroupsIDs(ReplicationServersSecurityGroupsIDsT &&value)
CreateReplicationConfigurationTemplateRequest & WithEbsEncryption(ReplicationConfigurationEbsEncryption value)
CreateReplicationConfigurationTemplateRequest & WithTags(TagsT &&value)
CreateReplicationConfigurationTemplateRequest & WithAssociateDefaultSecurityGroup(bool value)
CreateReplicationConfigurationTemplateRequest & WithStagingAreaSubnetId(StagingAreaSubnetIdT &&value)
ReplicationConfigurationDefaultLargeStagingDiskType GetDefaultLargeStagingDiskType() const
CreateReplicationConfigurationTemplateRequest & WithInternetProtocol(InternetProtocol value)
CreateReplicationConfigurationTemplateRequest & WithStagingAreaTags(StagingAreaTagsT &&value)
CreateReplicationConfigurationTemplateRequest & WithEbsEncryptionKeyArn(EbsEncryptionKeyArnT &&value)
CreateReplicationConfigurationTemplateRequest & WithDefaultLargeStagingDiskType(ReplicationConfigurationDefaultLargeStagingDiskType value)
CreateReplicationConfigurationTemplateRequest & AddTags(TagsKeyT &&key, TagsValueT &&value)
CreateReplicationConfigurationTemplateRequest & WithCreatePublicIP(bool value)
CreateReplicationConfigurationTemplateRequest & WithStorageConfiguration(StorageConfigurationT &&value)
CreateReplicationConfigurationTemplateRequest & WithStoreSnapshotOnLocalZone(bool value)
CreateReplicationConfigurationTemplateRequest & WithReplicationServerInstanceType(ReplicationServerInstanceTypeT &&value)
CreateReplicationConfigurationTemplateRequest & WithBandwidthThrottling(long long value)
AWS_MGN_API Aws::String SerializePayload() const override
CreateReplicationConfigurationTemplateRequest & WithUseFipsEndpoint(bool value)
CreateReplicationConfigurationTemplateRequest & AddStagingAreaTags(StagingAreaTagsKeyT &&key, StagingAreaTagsValueT &&value)
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector