AWS SDK for C++

AWS SDK for C++ Version 1.11.740

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/PITPolicyRule.h>
13#include <aws/drs/model/ReplicationConfigurationDataPlaneRouting.h>
14#include <aws/drs/model/ReplicationConfigurationDefaultLargeStagingDiskType.h>
15#include <aws/drs/model/ReplicationConfigurationEbsEncryption.h>
16
17#include <utility>
18
19namespace Aws {
20namespace drs {
21namespace Model {
22
26 public:
28
29 // Service request name is the Operation name which will send this request out,
30 // each operation should has unique request name, so that we can get operation's name from this request.
31 // Note: this is not true for response, multiple operations may have the same response name,
32 // so we can not get operation's name from response.
33 inline virtual const char* GetServiceRequestName() const override { return "UpdateReplicationConfigurationTemplate"; }
34
35 AWS_DRS_API Aws::String SerializePayload() const override;
36
38
41 inline const Aws::String& GetArn() const { return m_arn; }
42 inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; }
43 template <typename ArnT = Aws::String>
44 void SetArn(ArnT&& value) {
45 m_arnHasBeenSet = true;
46 m_arn = std::forward<ArnT>(value);
47 }
48 template <typename ArnT = Aws::String>
50 SetArn(std::forward<ArnT>(value));
51 return *this;
52 }
54
56
60 inline bool GetAssociateDefaultSecurityGroup() const { return m_associateDefaultSecurityGroup; }
61 inline bool AssociateDefaultSecurityGroupHasBeenSet() const { return m_associateDefaultSecurityGroupHasBeenSet; }
62 inline void SetAssociateDefaultSecurityGroup(bool value) {
63 m_associateDefaultSecurityGroupHasBeenSet = true;
64 m_associateDefaultSecurityGroup = value;
65 }
68 return *this;
69 }
71
73
77 inline bool GetAutoReplicateNewDisks() const { return m_autoReplicateNewDisks; }
78 inline bool AutoReplicateNewDisksHasBeenSet() const { return m_autoReplicateNewDisksHasBeenSet; }
79 inline void SetAutoReplicateNewDisks(bool value) {
80 m_autoReplicateNewDisksHasBeenSet = true;
81 m_autoReplicateNewDisks = value;
82 }
85 return *this;
86 }
88
90
94 inline long long GetBandwidthThrottling() const { return m_bandwidthThrottling; }
95 inline bool BandwidthThrottlingHasBeenSet() const { return m_bandwidthThrottlingHasBeenSet; }
96 inline void SetBandwidthThrottling(long long value) {
97 m_bandwidthThrottlingHasBeenSet = true;
98 m_bandwidthThrottling = value;
99 }
102 return *this;
103 }
105
107
110 inline bool GetCreatePublicIP() const { return m_createPublicIP; }
111 inline bool CreatePublicIPHasBeenSet() const { return m_createPublicIPHasBeenSet; }
112 inline void SetCreatePublicIP(bool value) {
113 m_createPublicIPHasBeenSet = true;
114 m_createPublicIP = value;
115 }
117 SetCreatePublicIP(value);
118 return *this;
119 }
121
123
126 inline ReplicationConfigurationDataPlaneRouting GetDataPlaneRouting() const { return m_dataPlaneRouting; }
127 inline bool DataPlaneRoutingHasBeenSet() const { return m_dataPlaneRoutingHasBeenSet; }
129 m_dataPlaneRoutingHasBeenSet = true;
130 m_dataPlaneRouting = value;
131 }
133 SetDataPlaneRouting(value);
134 return *this;
135 }
137
139
143 return m_defaultLargeStagingDiskType;
144 }
145 inline bool DefaultLargeStagingDiskTypeHasBeenSet() const { return m_defaultLargeStagingDiskTypeHasBeenSet; }
147 m_defaultLargeStagingDiskTypeHasBeenSet = true;
148 m_defaultLargeStagingDiskType = value;
149 }
153 return *this;
154 }
156
158
161 inline ReplicationConfigurationEbsEncryption GetEbsEncryption() const { return m_ebsEncryption; }
162 inline bool EbsEncryptionHasBeenSet() const { return m_ebsEncryptionHasBeenSet; }
164 m_ebsEncryptionHasBeenSet = true;
165 m_ebsEncryption = value;
166 }
168 SetEbsEncryption(value);
169 return *this;
170 }
172
174
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 const Aws::Vector<PITPolicyRule>& GetPitPolicy() const { return m_pitPolicy; }
197 inline bool PitPolicyHasBeenSet() const { return m_pitPolicyHasBeenSet; }
198 template <typename PitPolicyT = Aws::Vector<PITPolicyRule>>
199 void SetPitPolicy(PitPolicyT&& value) {
200 m_pitPolicyHasBeenSet = true;
201 m_pitPolicy = std::forward<PitPolicyT>(value);
202 }
203 template <typename PitPolicyT = Aws::Vector<PITPolicyRule>>
205 SetPitPolicy(std::forward<PitPolicyT>(value));
206 return *this;
207 }
208 template <typename PitPolicyT = PITPolicyRule>
210 m_pitPolicyHasBeenSet = true;
211 m_pitPolicy.emplace_back(std::forward<PitPolicyT>(value));
212 return *this;
213 }
215
217
220 inline const Aws::String& GetReplicationConfigurationTemplateID() const { return m_replicationConfigurationTemplateID; }
221 inline bool ReplicationConfigurationTemplateIDHasBeenSet() const { return m_replicationConfigurationTemplateIDHasBeenSet; }
222 template <typename ReplicationConfigurationTemplateIDT = Aws::String>
223 void SetReplicationConfigurationTemplateID(ReplicationConfigurationTemplateIDT&& value) {
224 m_replicationConfigurationTemplateIDHasBeenSet = true;
225 m_replicationConfigurationTemplateID = std::forward<ReplicationConfigurationTemplateIDT>(value);
226 }
227 template <typename ReplicationConfigurationTemplateIDT = Aws::String>
229 SetReplicationConfigurationTemplateID(std::forward<ReplicationConfigurationTemplateIDT>(value));
230 return *this;
231 }
233
235
238 inline const Aws::String& GetReplicationServerInstanceType() const { return m_replicationServerInstanceType; }
239 inline bool ReplicationServerInstanceTypeHasBeenSet() const { return m_replicationServerInstanceTypeHasBeenSet; }
240 template <typename ReplicationServerInstanceTypeT = Aws::String>
241 void SetReplicationServerInstanceType(ReplicationServerInstanceTypeT&& value) {
242 m_replicationServerInstanceTypeHasBeenSet = true;
243 m_replicationServerInstanceType = std::forward<ReplicationServerInstanceTypeT>(value);
244 }
245 template <typename ReplicationServerInstanceTypeT = Aws::String>
247 SetReplicationServerInstanceType(std::forward<ReplicationServerInstanceTypeT>(value));
248 return *this;
249 }
251
253
256 inline const Aws::Vector<Aws::String>& GetReplicationServersSecurityGroupsIDs() const { return m_replicationServersSecurityGroupsIDs; }
257 inline bool ReplicationServersSecurityGroupsIDsHasBeenSet() const { return m_replicationServersSecurityGroupsIDsHasBeenSet; }
258 template <typename ReplicationServersSecurityGroupsIDsT = Aws::Vector<Aws::String>>
259 void SetReplicationServersSecurityGroupsIDs(ReplicationServersSecurityGroupsIDsT&& value) {
260 m_replicationServersSecurityGroupsIDsHasBeenSet = true;
261 m_replicationServersSecurityGroupsIDs = std::forward<ReplicationServersSecurityGroupsIDsT>(value);
262 }
263 template <typename ReplicationServersSecurityGroupsIDsT = Aws::Vector<Aws::String>>
265 SetReplicationServersSecurityGroupsIDs(std::forward<ReplicationServersSecurityGroupsIDsT>(value));
266 return *this;
267 }
268 template <typename ReplicationServersSecurityGroupsIDsT = Aws::String>
270 m_replicationServersSecurityGroupsIDsHasBeenSet = true;
271 m_replicationServersSecurityGroupsIDs.emplace_back(std::forward<ReplicationServersSecurityGroupsIDsT>(value));
272 return *this;
273 }
275
277
280 inline const Aws::String& GetStagingAreaSubnetId() const { return m_stagingAreaSubnetId; }
281 inline bool StagingAreaSubnetIdHasBeenSet() const { return m_stagingAreaSubnetIdHasBeenSet; }
282 template <typename StagingAreaSubnetIdT = Aws::String>
283 void SetStagingAreaSubnetId(StagingAreaSubnetIdT&& value) {
284 m_stagingAreaSubnetIdHasBeenSet = true;
285 m_stagingAreaSubnetId = std::forward<StagingAreaSubnetIdT>(value);
286 }
287 template <typename StagingAreaSubnetIdT = Aws::String>
289 SetStagingAreaSubnetId(std::forward<StagingAreaSubnetIdT>(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 UpdateReplicationConfigurationTemplateRequest& 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 bool GetUseDedicatedReplicationServer() const { return m_useDedicatedReplicationServer; }
325 inline bool UseDedicatedReplicationServerHasBeenSet() const { return m_useDedicatedReplicationServerHasBeenSet; }
326 inline void SetUseDedicatedReplicationServer(bool value) {
327 m_useDedicatedReplicationServerHasBeenSet = true;
328 m_useDedicatedReplicationServer = value;
329 }
332 return *this;
333 }
335 private:
336 Aws::String m_arn;
337
338 bool m_associateDefaultSecurityGroup{false};
339
340 bool m_autoReplicateNewDisks{false};
341
342 long long m_bandwidthThrottling{0};
343
344 bool m_createPublicIP{false};
345
347
348 ReplicationConfigurationDefaultLargeStagingDiskType m_defaultLargeStagingDiskType{
350
352
353 Aws::String m_ebsEncryptionKeyArn;
354
355 Aws::Vector<PITPolicyRule> m_pitPolicy;
356
357 Aws::String m_replicationConfigurationTemplateID;
358
359 Aws::String m_replicationServerInstanceType;
360
361 Aws::Vector<Aws::String> m_replicationServersSecurityGroupsIDs;
362
363 Aws::String m_stagingAreaSubnetId;
364
365 Aws::Map<Aws::String, Aws::String> m_stagingAreaTags;
366
367 bool m_useDedicatedReplicationServer{false};
368 bool m_arnHasBeenSet = false;
369 bool m_associateDefaultSecurityGroupHasBeenSet = false;
370 bool m_autoReplicateNewDisksHasBeenSet = false;
371 bool m_bandwidthThrottlingHasBeenSet = false;
372 bool m_createPublicIPHasBeenSet = false;
373 bool m_dataPlaneRoutingHasBeenSet = false;
374 bool m_defaultLargeStagingDiskTypeHasBeenSet = false;
375 bool m_ebsEncryptionHasBeenSet = false;
376 bool m_ebsEncryptionKeyArnHasBeenSet = false;
377 bool m_pitPolicyHasBeenSet = false;
378 bool m_replicationConfigurationTemplateIDHasBeenSet = false;
379 bool m_replicationServerInstanceTypeHasBeenSet = false;
380 bool m_replicationServersSecurityGroupsIDsHasBeenSet = false;
381 bool m_stagingAreaSubnetIdHasBeenSet = false;
382 bool m_stagingAreaTagsHasBeenSet = false;
383 bool m_useDedicatedReplicationServerHasBeenSet = false;
384};
385
386} // namespace Model
387} // namespace drs
388} // 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 & 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