AWS SDK for C++

AWS SDK for C++ Version 1.11.787

Loading...
Searching...
No Matches
UpdateReplicationConfigurationTemplateRequest.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/drs/DrsRequest.h>
11#include <aws/drs/Drs_EXPORTS.h>
12#include <aws/drs/model/InternetProtocol.h>
13#include <aws/drs/model/PITPolicyRule.h>
14#include <aws/drs/model/ReplicationConfigurationDataPlaneRouting.h>
15#include <aws/drs/model/ReplicationConfigurationDefaultLargeStagingDiskType.h>
16#include <aws/drs/model/ReplicationConfigurationEbsEncryption.h>
17
18#include <utility>
19
20namespace Aws {
21namespace drs {
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 "UpdateReplicationConfigurationTemplate"; }
35
36 AWS_DRS_API Aws::String SerializePayload() const override;
37
39
42 inline const Aws::String& GetReplicationConfigurationTemplateID() const { return m_replicationConfigurationTemplateID; }
43 inline bool ReplicationConfigurationTemplateIDHasBeenSet() const { return m_replicationConfigurationTemplateIDHasBeenSet; }
44 template <typename ReplicationConfigurationTemplateIDT = Aws::String>
45 void SetReplicationConfigurationTemplateID(ReplicationConfigurationTemplateIDT&& value) {
46 m_replicationConfigurationTemplateIDHasBeenSet = true;
47 m_replicationConfigurationTemplateID = std::forward<ReplicationConfigurationTemplateIDT>(value);
48 }
49 template <typename ReplicationConfigurationTemplateIDT = Aws::String>
51 SetReplicationConfigurationTemplateID(std::forward<ReplicationConfigurationTemplateIDT>(value));
52 return *this;
53 }
55
57
60 inline const Aws::String& GetArn() const { return m_arn; }
61 inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; }
62 template <typename ArnT = Aws::String>
63 void SetArn(ArnT&& value) {
64 m_arnHasBeenSet = true;
65 m_arn = std::forward<ArnT>(value);
66 }
67 template <typename ArnT = Aws::String>
69 SetArn(std::forward<ArnT>(value));
70 return *this;
71 }
73
75
78 inline const Aws::String& GetStagingAreaSubnetId() const { return m_stagingAreaSubnetId; }
79 inline bool StagingAreaSubnetIdHasBeenSet() const { return m_stagingAreaSubnetIdHasBeenSet; }
80 template <typename StagingAreaSubnetIdT = Aws::String>
81 void SetStagingAreaSubnetId(StagingAreaSubnetIdT&& value) {
82 m_stagingAreaSubnetIdHasBeenSet = true;
83 m_stagingAreaSubnetId = std::forward<StagingAreaSubnetIdT>(value);
84 }
85 template <typename StagingAreaSubnetIdT = Aws::String>
87 SetStagingAreaSubnetId(std::forward<StagingAreaSubnetIdT>(value));
88 return *this;
89 }
91
93
97 inline bool GetAssociateDefaultSecurityGroup() const { return m_associateDefaultSecurityGroup; }
98 inline bool AssociateDefaultSecurityGroupHasBeenSet() const { return m_associateDefaultSecurityGroupHasBeenSet; }
99 inline void SetAssociateDefaultSecurityGroup(bool value) {
100 m_associateDefaultSecurityGroupHasBeenSet = true;
101 m_associateDefaultSecurityGroup = value;
102 }
105 return *this;
106 }
108
110
113 inline const Aws::Vector<Aws::String>& GetReplicationServersSecurityGroupsIDs() const { return m_replicationServersSecurityGroupsIDs; }
114 inline bool ReplicationServersSecurityGroupsIDsHasBeenSet() const { return m_replicationServersSecurityGroupsIDsHasBeenSet; }
115 template <typename ReplicationServersSecurityGroupsIDsT = Aws::Vector<Aws::String>>
116 void SetReplicationServersSecurityGroupsIDs(ReplicationServersSecurityGroupsIDsT&& value) {
117 m_replicationServersSecurityGroupsIDsHasBeenSet = true;
118 m_replicationServersSecurityGroupsIDs = std::forward<ReplicationServersSecurityGroupsIDsT>(value);
119 }
120 template <typename ReplicationServersSecurityGroupsIDsT = Aws::Vector<Aws::String>>
122 SetReplicationServersSecurityGroupsIDs(std::forward<ReplicationServersSecurityGroupsIDsT>(value));
123 return *this;
124 }
125 template <typename ReplicationServersSecurityGroupsIDsT = Aws::String>
127 m_replicationServersSecurityGroupsIDsHasBeenSet = true;
128 m_replicationServersSecurityGroupsIDs.emplace_back(std::forward<ReplicationServersSecurityGroupsIDsT>(value));
129 return *this;
130 }
132
134
137 inline const Aws::String& GetReplicationServerInstanceType() const { return m_replicationServerInstanceType; }
138 inline bool ReplicationServerInstanceTypeHasBeenSet() const { return m_replicationServerInstanceTypeHasBeenSet; }
139 template <typename ReplicationServerInstanceTypeT = Aws::String>
140 void SetReplicationServerInstanceType(ReplicationServerInstanceTypeT&& value) {
141 m_replicationServerInstanceTypeHasBeenSet = true;
142 m_replicationServerInstanceType = std::forward<ReplicationServerInstanceTypeT>(value);
143 }
144 template <typename ReplicationServerInstanceTypeT = Aws::String>
146 SetReplicationServerInstanceType(std::forward<ReplicationServerInstanceTypeT>(value));
147 return *this;
148 }
150
152
156 inline bool GetUseDedicatedReplicationServer() const { return m_useDedicatedReplicationServer; }
157 inline bool UseDedicatedReplicationServerHasBeenSet() const { return m_useDedicatedReplicationServerHasBeenSet; }
158 inline void SetUseDedicatedReplicationServer(bool value) {
159 m_useDedicatedReplicationServerHasBeenSet = true;
160 m_useDedicatedReplicationServer = value;
161 }
164 return *this;
165 }
167
169
173 return m_defaultLargeStagingDiskType;
174 }
175 inline bool DefaultLargeStagingDiskTypeHasBeenSet() const { return m_defaultLargeStagingDiskTypeHasBeenSet; }
177 m_defaultLargeStagingDiskTypeHasBeenSet = true;
178 m_defaultLargeStagingDiskType = value;
179 }
183 return *this;
184 }
186
188
191 inline ReplicationConfigurationEbsEncryption GetEbsEncryption() const { return m_ebsEncryption; }
192 inline bool EbsEncryptionHasBeenSet() const { return m_ebsEncryptionHasBeenSet; }
194 m_ebsEncryptionHasBeenSet = true;
195 m_ebsEncryption = value;
196 }
198 SetEbsEncryption(value);
199 return *this;
200 }
202
204
207 inline const Aws::String& GetEbsEncryptionKeyArn() const { return m_ebsEncryptionKeyArn; }
208 inline bool EbsEncryptionKeyArnHasBeenSet() const { return m_ebsEncryptionKeyArnHasBeenSet; }
209 template <typename EbsEncryptionKeyArnT = Aws::String>
210 void SetEbsEncryptionKeyArn(EbsEncryptionKeyArnT&& value) {
211 m_ebsEncryptionKeyArnHasBeenSet = true;
212 m_ebsEncryptionKeyArn = std::forward<EbsEncryptionKeyArnT>(value);
213 }
214 template <typename EbsEncryptionKeyArnT = Aws::String>
216 SetEbsEncryptionKeyArn(std::forward<EbsEncryptionKeyArnT>(value));
217 return *this;
218 }
220
222
226 inline long long GetBandwidthThrottling() const { return m_bandwidthThrottling; }
227 inline bool BandwidthThrottlingHasBeenSet() const { return m_bandwidthThrottlingHasBeenSet; }
228 inline void SetBandwidthThrottling(long long value) {
229 m_bandwidthThrottlingHasBeenSet = true;
230 m_bandwidthThrottling = value;
231 }
234 return *this;
235 }
237
239
242 inline ReplicationConfigurationDataPlaneRouting GetDataPlaneRouting() const { return m_dataPlaneRouting; }
243 inline bool DataPlaneRoutingHasBeenSet() const { return m_dataPlaneRoutingHasBeenSet; }
245 m_dataPlaneRoutingHasBeenSet = true;
246 m_dataPlaneRouting = value;
247 }
249 SetDataPlaneRouting(value);
250 return *this;
251 }
253
255
258 inline bool GetCreatePublicIP() const { return m_createPublicIP; }
259 inline bool CreatePublicIPHasBeenSet() const { return m_createPublicIPHasBeenSet; }
260 inline void SetCreatePublicIP(bool value) {
261 m_createPublicIPHasBeenSet = true;
262 m_createPublicIP = value;
263 }
265 SetCreatePublicIP(value);
266 return *this;
267 }
269
271
275 inline const Aws::Map<Aws::String, Aws::String>& GetStagingAreaTags() const { return m_stagingAreaTags; }
276 inline bool StagingAreaTagsHasBeenSet() const { return m_stagingAreaTagsHasBeenSet; }
277 template <typename StagingAreaTagsT = Aws::Map<Aws::String, Aws::String>>
278 void SetStagingAreaTags(StagingAreaTagsT&& value) {
279 m_stagingAreaTagsHasBeenSet = true;
280 m_stagingAreaTags = std::forward<StagingAreaTagsT>(value);
281 }
282 template <typename StagingAreaTagsT = Aws::Map<Aws::String, Aws::String>>
284 SetStagingAreaTags(std::forward<StagingAreaTagsT>(value));
285 return *this;
286 }
287 template <typename StagingAreaTagsKeyT = Aws::String, typename StagingAreaTagsValueT = Aws::String>
288 UpdateReplicationConfigurationTemplateRequest& AddStagingAreaTags(StagingAreaTagsKeyT&& key, StagingAreaTagsValueT&& value) {
289 m_stagingAreaTagsHasBeenSet = true;
290 m_stagingAreaTags.emplace(std::forward<StagingAreaTagsKeyT>(key), std::forward<StagingAreaTagsValueT>(value));
291 return *this;
292 }
294
296
300 inline const Aws::Vector<PITPolicyRule>& GetPitPolicy() const { return m_pitPolicy; }
301 inline bool PitPolicyHasBeenSet() const { return m_pitPolicyHasBeenSet; }
302 template <typename PitPolicyT = Aws::Vector<PITPolicyRule>>
303 void SetPitPolicy(PitPolicyT&& value) {
304 m_pitPolicyHasBeenSet = true;
305 m_pitPolicy = std::forward<PitPolicyT>(value);
306 }
307 template <typename PitPolicyT = Aws::Vector<PITPolicyRule>>
309 SetPitPolicy(std::forward<PitPolicyT>(value));
310 return *this;
311 }
312 template <typename PitPolicyT = PITPolicyRule>
314 m_pitPolicyHasBeenSet = true;
315 m_pitPolicy.emplace_back(std::forward<PitPolicyT>(value));
316 return *this;
317 }
319
321
325 inline bool GetAutoReplicateNewDisks() const { return m_autoReplicateNewDisks; }
326 inline bool AutoReplicateNewDisksHasBeenSet() const { return m_autoReplicateNewDisksHasBeenSet; }
327 inline void SetAutoReplicateNewDisks(bool value) {
328 m_autoReplicateNewDisksHasBeenSet = true;
329 m_autoReplicateNewDisks = value;
330 }
333 return *this;
334 }
336
338
342 inline InternetProtocol GetInternetProtocol() const { return m_internetProtocol; }
343 inline bool InternetProtocolHasBeenSet() const { return m_internetProtocolHasBeenSet; }
345 m_internetProtocolHasBeenSet = true;
346 m_internetProtocol = value;
347 }
349 SetInternetProtocol(value);
350 return *this;
351 }
353 private:
354 Aws::String m_replicationConfigurationTemplateID;
355
356 Aws::String m_arn;
357
358 Aws::String m_stagingAreaSubnetId;
359
360 bool m_associateDefaultSecurityGroup{false};
361
362 Aws::Vector<Aws::String> m_replicationServersSecurityGroupsIDs;
363
364 Aws::String m_replicationServerInstanceType;
365
366 bool m_useDedicatedReplicationServer{false};
367
368 ReplicationConfigurationDefaultLargeStagingDiskType m_defaultLargeStagingDiskType{
370
372
373 Aws::String m_ebsEncryptionKeyArn;
374
375 long long m_bandwidthThrottling{0};
376
378
379 bool m_createPublicIP{false};
380
381 Aws::Map<Aws::String, Aws::String> m_stagingAreaTags;
382
383 Aws::Vector<PITPolicyRule> m_pitPolicy;
384
385 bool m_autoReplicateNewDisks{false};
386
388 bool m_replicationConfigurationTemplateIDHasBeenSet = false;
389 bool m_arnHasBeenSet = false;
390 bool m_stagingAreaSubnetIdHasBeenSet = false;
391 bool m_associateDefaultSecurityGroupHasBeenSet = false;
392 bool m_replicationServersSecurityGroupsIDsHasBeenSet = false;
393 bool m_replicationServerInstanceTypeHasBeenSet = false;
394 bool m_useDedicatedReplicationServerHasBeenSet = false;
395 bool m_defaultLargeStagingDiskTypeHasBeenSet = false;
396 bool m_ebsEncryptionHasBeenSet = false;
397 bool m_ebsEncryptionKeyArnHasBeenSet = false;
398 bool m_bandwidthThrottlingHasBeenSet = false;
399 bool m_dataPlaneRoutingHasBeenSet = false;
400 bool m_createPublicIPHasBeenSet = false;
401 bool m_stagingAreaTagsHasBeenSet = false;
402 bool m_pitPolicyHasBeenSet = false;
403 bool m_autoReplicateNewDisksHasBeenSet = false;
404 bool m_internetProtocolHasBeenSet = false;
405};
406
407} // namespace Model
408} // namespace drs
409} // namespace Aws
UpdateReplicationConfigurationTemplateRequest & AddStagingAreaTags(StagingAreaTagsKeyT &&key, StagingAreaTagsValueT &&value)
void SetDefaultLargeStagingDiskType(ReplicationConfigurationDefaultLargeStagingDiskType value)
UpdateReplicationConfigurationTemplateRequest & WithCreatePublicIP(bool value)
UpdateReplicationConfigurationTemplateRequest & WithStagingAreaSubnetId(StagingAreaSubnetIdT &&value)
UpdateReplicationConfigurationTemplateRequest & WithPitPolicy(PitPolicyT &&value)
UpdateReplicationConfigurationTemplateRequest & AddReplicationServersSecurityGroupsIDs(ReplicationServersSecurityGroupsIDsT &&value)
UpdateReplicationConfigurationTemplateRequest & WithReplicationServerInstanceType(ReplicationServerInstanceTypeT &&value)
UpdateReplicationConfigurationTemplateRequest & WithAutoReplicateNewDisks(bool value)
UpdateReplicationConfigurationTemplateRequest & WithUseDedicatedReplicationServer(bool value)
UpdateReplicationConfigurationTemplateRequest & WithStagingAreaTags(StagingAreaTagsT &&value)
UpdateReplicationConfigurationTemplateRequest & WithReplicationServersSecurityGroupsIDs(ReplicationServersSecurityGroupsIDsT &&value)
AWS_DRS_API Aws::String SerializePayload() const override
UpdateReplicationConfigurationTemplateRequest & WithEbsEncryption(ReplicationConfigurationEbsEncryption value)
UpdateReplicationConfigurationTemplateRequest & WithInternetProtocol(InternetProtocol value)
UpdateReplicationConfigurationTemplateRequest & WithDefaultLargeStagingDiskType(ReplicationConfigurationDefaultLargeStagingDiskType value)
UpdateReplicationConfigurationTemplateRequest & WithAssociateDefaultSecurityGroup(bool value)
ReplicationConfigurationDefaultLargeStagingDiskType GetDefaultLargeStagingDiskType() const
UpdateReplicationConfigurationTemplateRequest & AddPitPolicy(PitPolicyT &&value)
UpdateReplicationConfigurationTemplateRequest & WithDataPlaneRouting(ReplicationConfigurationDataPlaneRouting value)
UpdateReplicationConfigurationTemplateRequest & WithBandwidthThrottling(long long value)
UpdateReplicationConfigurationTemplateRequest & WithReplicationConfigurationTemplateID(ReplicationConfigurationTemplateIDT &&value)
UpdateReplicationConfigurationTemplateRequest & WithEbsEncryptionKeyArn(EbsEncryptionKeyArnT &&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