AWS SDK for C++

AWS SDK for C++ Version 1.11.787

Loading...
Searching...
No Matches
UpdateReplicationConfigurationRequest.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#include <aws/drs/model/ReplicationConfigurationReplicatedDisk.h>
18
19#include <utility>
20
21namespace Aws {
22namespace drs {
23namespace Model {
24
28 public:
30
31 // Service request name is the Operation name which will send this request out,
32 // each operation should has unique request name, so that we can get operation's name from this request.
33 // Note: this is not true for response, multiple operations may have the same response name,
34 // so we can not get operation's name from response.
35 inline virtual const char* GetServiceRequestName() const override { return "UpdateReplicationConfiguration"; }
36
37 AWS_DRS_API Aws::String SerializePayload() const override;
38
40
43 inline const Aws::String& GetSourceServerID() const { return m_sourceServerID; }
44 inline bool SourceServerIDHasBeenSet() const { return m_sourceServerIDHasBeenSet; }
45 template <typename SourceServerIDT = Aws::String>
46 void SetSourceServerID(SourceServerIDT&& value) {
47 m_sourceServerIDHasBeenSet = true;
48 m_sourceServerID = std::forward<SourceServerIDT>(value);
49 }
50 template <typename SourceServerIDT = Aws::String>
52 SetSourceServerID(std::forward<SourceServerIDT>(value));
53 return *this;
54 }
56
58
61 inline const Aws::String& GetName() const { return m_name; }
62 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
63 template <typename NameT = Aws::String>
64 void SetName(NameT&& value) {
65 m_nameHasBeenSet = true;
66 m_name = std::forward<NameT>(value);
67 }
68 template <typename NameT = Aws::String>
70 SetName(std::forward<NameT>(value));
71 return *this;
72 }
74
76
79 inline const Aws::String& GetStagingAreaSubnetId() const { return m_stagingAreaSubnetId; }
80 inline bool StagingAreaSubnetIdHasBeenSet() const { return m_stagingAreaSubnetIdHasBeenSet; }
81 template <typename StagingAreaSubnetIdT = Aws::String>
82 void SetStagingAreaSubnetId(StagingAreaSubnetIdT&& value) {
83 m_stagingAreaSubnetIdHasBeenSet = true;
84 m_stagingAreaSubnetId = std::forward<StagingAreaSubnetIdT>(value);
85 }
86 template <typename StagingAreaSubnetIdT = Aws::String>
88 SetStagingAreaSubnetId(std::forward<StagingAreaSubnetIdT>(value));
89 return *this;
90 }
92
94
98 inline bool GetAssociateDefaultSecurityGroup() const { return m_associateDefaultSecurityGroup; }
99 inline bool AssociateDefaultSecurityGroupHasBeenSet() const { return m_associateDefaultSecurityGroupHasBeenSet; }
100 inline void SetAssociateDefaultSecurityGroup(bool value) {
101 m_associateDefaultSecurityGroupHasBeenSet = true;
102 m_associateDefaultSecurityGroup = value;
103 }
106 return *this;
107 }
109
111
114 inline const Aws::Vector<Aws::String>& GetReplicationServersSecurityGroupsIDs() const { return m_replicationServersSecurityGroupsIDs; }
115 inline bool ReplicationServersSecurityGroupsIDsHasBeenSet() const { return m_replicationServersSecurityGroupsIDsHasBeenSet; }
116 template <typename ReplicationServersSecurityGroupsIDsT = Aws::Vector<Aws::String>>
117 void SetReplicationServersSecurityGroupsIDs(ReplicationServersSecurityGroupsIDsT&& value) {
118 m_replicationServersSecurityGroupsIDsHasBeenSet = true;
119 m_replicationServersSecurityGroupsIDs = std::forward<ReplicationServersSecurityGroupsIDsT>(value);
120 }
121 template <typename ReplicationServersSecurityGroupsIDsT = Aws::Vector<Aws::String>>
123 SetReplicationServersSecurityGroupsIDs(std::forward<ReplicationServersSecurityGroupsIDsT>(value));
124 return *this;
125 }
126 template <typename ReplicationServersSecurityGroupsIDsT = Aws::String>
128 m_replicationServersSecurityGroupsIDsHasBeenSet = true;
129 m_replicationServersSecurityGroupsIDs.emplace_back(std::forward<ReplicationServersSecurityGroupsIDsT>(value));
130 return *this;
131 }
133
135
138 inline const Aws::String& GetReplicationServerInstanceType() const { return m_replicationServerInstanceType; }
139 inline bool ReplicationServerInstanceTypeHasBeenSet() const { return m_replicationServerInstanceTypeHasBeenSet; }
140 template <typename ReplicationServerInstanceTypeT = Aws::String>
141 void SetReplicationServerInstanceType(ReplicationServerInstanceTypeT&& value) {
142 m_replicationServerInstanceTypeHasBeenSet = true;
143 m_replicationServerInstanceType = std::forward<ReplicationServerInstanceTypeT>(value);
144 }
145 template <typename ReplicationServerInstanceTypeT = Aws::String>
147 SetReplicationServerInstanceType(std::forward<ReplicationServerInstanceTypeT>(value));
148 return *this;
149 }
151
153
157 inline bool GetUseDedicatedReplicationServer() const { return m_useDedicatedReplicationServer; }
158 inline bool UseDedicatedReplicationServerHasBeenSet() const { return m_useDedicatedReplicationServerHasBeenSet; }
159 inline void SetUseDedicatedReplicationServer(bool value) {
160 m_useDedicatedReplicationServerHasBeenSet = true;
161 m_useDedicatedReplicationServer = value;
162 }
165 return *this;
166 }
168
170
174 return m_defaultLargeStagingDiskType;
175 }
176 inline bool DefaultLargeStagingDiskTypeHasBeenSet() const { return m_defaultLargeStagingDiskTypeHasBeenSet; }
178 m_defaultLargeStagingDiskTypeHasBeenSet = true;
179 m_defaultLargeStagingDiskType = value;
180 }
183 return *this;
184 }
186
188
191 inline const Aws::Vector<ReplicationConfigurationReplicatedDisk>& GetReplicatedDisks() const { return m_replicatedDisks; }
192 inline bool ReplicatedDisksHasBeenSet() const { return m_replicatedDisksHasBeenSet; }
193 template <typename ReplicatedDisksT = Aws::Vector<ReplicationConfigurationReplicatedDisk>>
194 void SetReplicatedDisks(ReplicatedDisksT&& value) {
195 m_replicatedDisksHasBeenSet = true;
196 m_replicatedDisks = std::forward<ReplicatedDisksT>(value);
197 }
198 template <typename ReplicatedDisksT = Aws::Vector<ReplicationConfigurationReplicatedDisk>>
200 SetReplicatedDisks(std::forward<ReplicatedDisksT>(value));
201 return *this;
202 }
203 template <typename ReplicatedDisksT = ReplicationConfigurationReplicatedDisk>
205 m_replicatedDisksHasBeenSet = true;
206 m_replicatedDisks.emplace_back(std::forward<ReplicatedDisksT>(value));
207 return *this;
208 }
210
212
215 inline ReplicationConfigurationEbsEncryption GetEbsEncryption() const { return m_ebsEncryption; }
216 inline bool EbsEncryptionHasBeenSet() const { return m_ebsEncryptionHasBeenSet; }
218 m_ebsEncryptionHasBeenSet = true;
219 m_ebsEncryption = value;
220 }
222 SetEbsEncryption(value);
223 return *this;
224 }
226
228
231 inline const Aws::String& GetEbsEncryptionKeyArn() const { return m_ebsEncryptionKeyArn; }
232 inline bool EbsEncryptionKeyArnHasBeenSet() const { return m_ebsEncryptionKeyArnHasBeenSet; }
233 template <typename EbsEncryptionKeyArnT = Aws::String>
234 void SetEbsEncryptionKeyArn(EbsEncryptionKeyArnT&& value) {
235 m_ebsEncryptionKeyArnHasBeenSet = true;
236 m_ebsEncryptionKeyArn = std::forward<EbsEncryptionKeyArnT>(value);
237 }
238 template <typename EbsEncryptionKeyArnT = Aws::String>
240 SetEbsEncryptionKeyArn(std::forward<EbsEncryptionKeyArnT>(value));
241 return *this;
242 }
244
246
250 inline long long GetBandwidthThrottling() const { return m_bandwidthThrottling; }
251 inline bool BandwidthThrottlingHasBeenSet() const { return m_bandwidthThrottlingHasBeenSet; }
252 inline void SetBandwidthThrottling(long long value) {
253 m_bandwidthThrottlingHasBeenSet = true;
254 m_bandwidthThrottling = value;
255 }
258 return *this;
259 }
261
263
266 inline ReplicationConfigurationDataPlaneRouting GetDataPlaneRouting() const { return m_dataPlaneRouting; }
267 inline bool DataPlaneRoutingHasBeenSet() const { return m_dataPlaneRoutingHasBeenSet; }
269 m_dataPlaneRoutingHasBeenSet = true;
270 m_dataPlaneRouting = value;
271 }
273 SetDataPlaneRouting(value);
274 return *this;
275 }
277
279
282 inline bool GetCreatePublicIP() const { return m_createPublicIP; }
283 inline bool CreatePublicIPHasBeenSet() const { return m_createPublicIPHasBeenSet; }
284 inline void SetCreatePublicIP(bool value) {
285 m_createPublicIPHasBeenSet = true;
286 m_createPublicIP = value;
287 }
289 SetCreatePublicIP(value);
290 return *this;
291 }
293
295
299 inline const Aws::Map<Aws::String, Aws::String>& GetStagingAreaTags() const { return m_stagingAreaTags; }
300 inline bool StagingAreaTagsHasBeenSet() const { return m_stagingAreaTagsHasBeenSet; }
301 template <typename StagingAreaTagsT = Aws::Map<Aws::String, Aws::String>>
302 void SetStagingAreaTags(StagingAreaTagsT&& value) {
303 m_stagingAreaTagsHasBeenSet = true;
304 m_stagingAreaTags = std::forward<StagingAreaTagsT>(value);
305 }
306 template <typename StagingAreaTagsT = Aws::Map<Aws::String, Aws::String>>
308 SetStagingAreaTags(std::forward<StagingAreaTagsT>(value));
309 return *this;
310 }
311 template <typename StagingAreaTagsKeyT = Aws::String, typename StagingAreaTagsValueT = Aws::String>
312 UpdateReplicationConfigurationRequest& AddStagingAreaTags(StagingAreaTagsKeyT&& key, StagingAreaTagsValueT&& value) {
313 m_stagingAreaTagsHasBeenSet = true;
314 m_stagingAreaTags.emplace(std::forward<StagingAreaTagsKeyT>(key), std::forward<StagingAreaTagsValueT>(value));
315 return *this;
316 }
318
320
324 inline const Aws::Vector<PITPolicyRule>& GetPitPolicy() const { return m_pitPolicy; }
325 inline bool PitPolicyHasBeenSet() const { return m_pitPolicyHasBeenSet; }
326 template <typename PitPolicyT = Aws::Vector<PITPolicyRule>>
327 void SetPitPolicy(PitPolicyT&& value) {
328 m_pitPolicyHasBeenSet = true;
329 m_pitPolicy = std::forward<PitPolicyT>(value);
330 }
331 template <typename PitPolicyT = Aws::Vector<PITPolicyRule>>
333 SetPitPolicy(std::forward<PitPolicyT>(value));
334 return *this;
335 }
336 template <typename PitPolicyT = PITPolicyRule>
338 m_pitPolicyHasBeenSet = true;
339 m_pitPolicy.emplace_back(std::forward<PitPolicyT>(value));
340 return *this;
341 }
343
345
349 inline bool GetAutoReplicateNewDisks() const { return m_autoReplicateNewDisks; }
350 inline bool AutoReplicateNewDisksHasBeenSet() const { return m_autoReplicateNewDisksHasBeenSet; }
351 inline void SetAutoReplicateNewDisks(bool value) {
352 m_autoReplicateNewDisksHasBeenSet = true;
353 m_autoReplicateNewDisks = value;
354 }
357 return *this;
358 }
360
362
366 inline InternetProtocol GetInternetProtocol() const { return m_internetProtocol; }
367 inline bool InternetProtocolHasBeenSet() const { return m_internetProtocolHasBeenSet; }
369 m_internetProtocolHasBeenSet = true;
370 m_internetProtocol = value;
371 }
373 SetInternetProtocol(value);
374 return *this;
375 }
377 private:
378 Aws::String m_sourceServerID;
379
380 Aws::String m_name;
381
382 Aws::String m_stagingAreaSubnetId;
383
384 bool m_associateDefaultSecurityGroup{false};
385
386 Aws::Vector<Aws::String> m_replicationServersSecurityGroupsIDs;
387
388 Aws::String m_replicationServerInstanceType;
389
390 bool m_useDedicatedReplicationServer{false};
391
392 ReplicationConfigurationDefaultLargeStagingDiskType m_defaultLargeStagingDiskType{
394
396
398
399 Aws::String m_ebsEncryptionKeyArn;
400
401 long long m_bandwidthThrottling{0};
402
404
405 bool m_createPublicIP{false};
406
407 Aws::Map<Aws::String, Aws::String> m_stagingAreaTags;
408
409 Aws::Vector<PITPolicyRule> m_pitPolicy;
410
411 bool m_autoReplicateNewDisks{false};
412
414 bool m_sourceServerIDHasBeenSet = false;
415 bool m_nameHasBeenSet = false;
416 bool m_stagingAreaSubnetIdHasBeenSet = false;
417 bool m_associateDefaultSecurityGroupHasBeenSet = false;
418 bool m_replicationServersSecurityGroupsIDsHasBeenSet = false;
419 bool m_replicationServerInstanceTypeHasBeenSet = false;
420 bool m_useDedicatedReplicationServerHasBeenSet = false;
421 bool m_defaultLargeStagingDiskTypeHasBeenSet = false;
422 bool m_replicatedDisksHasBeenSet = false;
423 bool m_ebsEncryptionHasBeenSet = false;
424 bool m_ebsEncryptionKeyArnHasBeenSet = false;
425 bool m_bandwidthThrottlingHasBeenSet = false;
426 bool m_dataPlaneRoutingHasBeenSet = false;
427 bool m_createPublicIPHasBeenSet = false;
428 bool m_stagingAreaTagsHasBeenSet = false;
429 bool m_pitPolicyHasBeenSet = false;
430 bool m_autoReplicateNewDisksHasBeenSet = false;
431 bool m_internetProtocolHasBeenSet = false;
432};
433
434} // namespace Model
435} // namespace drs
436} // namespace Aws
UpdateReplicationConfigurationRequest & WithStagingAreaSubnetId(StagingAreaSubnetIdT &&value)
ReplicationConfigurationDefaultLargeStagingDiskType GetDefaultLargeStagingDiskType() const
UpdateReplicationConfigurationRequest & AddReplicationServersSecurityGroupsIDs(ReplicationServersSecurityGroupsIDsT &&value)
UpdateReplicationConfigurationRequest & WithAutoReplicateNewDisks(bool value)
const Aws::Map< Aws::String, Aws::String > & GetStagingAreaTags() const
const Aws::Vector< ReplicationConfigurationReplicatedDisk > & GetReplicatedDisks() const
UpdateReplicationConfigurationRequest & WithDefaultLargeStagingDiskType(ReplicationConfigurationDefaultLargeStagingDiskType value)
UpdateReplicationConfigurationRequest & WithInternetProtocol(InternetProtocol value)
void SetDefaultLargeStagingDiskType(ReplicationConfigurationDefaultLargeStagingDiskType value)
UpdateReplicationConfigurationRequest & WithReplicatedDisks(ReplicatedDisksT &&value)
AWS_DRS_API Aws::String SerializePayload() const override
UpdateReplicationConfigurationRequest & WithBandwidthThrottling(long long value)
UpdateReplicationConfigurationRequest & AddReplicatedDisks(ReplicatedDisksT &&value)
void SetEbsEncryption(ReplicationConfigurationEbsEncryption value)
UpdateReplicationConfigurationRequest & AddStagingAreaTags(StagingAreaTagsKeyT &&key, StagingAreaTagsValueT &&value)
const Aws::Vector< Aws::String > & GetReplicationServersSecurityGroupsIDs() const
UpdateReplicationConfigurationRequest & WithCreatePublicIP(bool value)
UpdateReplicationConfigurationRequest & WithDataPlaneRouting(ReplicationConfigurationDataPlaneRouting value)
UpdateReplicationConfigurationRequest & WithSourceServerID(SourceServerIDT &&value)
UpdateReplicationConfigurationRequest & AddPitPolicy(PitPolicyT &&value)
UpdateReplicationConfigurationRequest & WithAssociateDefaultSecurityGroup(bool value)
UpdateReplicationConfigurationRequest & WithPitPolicy(PitPolicyT &&value)
UpdateReplicationConfigurationRequest & WithUseDedicatedReplicationServer(bool value)
void SetReplicationServerInstanceType(ReplicationServerInstanceTypeT &&value)
UpdateReplicationConfigurationRequest & WithStagingAreaTags(StagingAreaTagsT &&value)
UpdateReplicationConfigurationRequest & WithReplicationServerInstanceType(ReplicationServerInstanceTypeT &&value)
UpdateReplicationConfigurationRequest & WithReplicationServersSecurityGroupsIDs(ReplicationServersSecurityGroupsIDsT &&value)
void SetReplicationServersSecurityGroupsIDs(ReplicationServersSecurityGroupsIDsT &&value)
UpdateReplicationConfigurationRequest & WithEbsEncryptionKeyArn(EbsEncryptionKeyArnT &&value)
UpdateReplicationConfigurationRequest & WithName(NameT &&value)
ReplicationConfigurationDataPlaneRouting GetDataPlaneRouting() const
void SetDataPlaneRouting(ReplicationConfigurationDataPlaneRouting value)
UpdateReplicationConfigurationRequest & WithEbsEncryption(ReplicationConfigurationEbsEncryption 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