AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
ReplicationConfigurationTemplate.h
1
6#pragma once
7#include <aws/drs/Drs_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/drs/model/ReplicationConfigurationDataPlaneRouting.h>
10#include <aws/drs/model/ReplicationConfigurationDefaultLargeStagingDiskType.h>
11#include <aws/drs/model/ReplicationConfigurationEbsEncryption.h>
12#include <aws/core/utils/memory/stl/AWSVector.h>
13#include <aws/core/utils/memory/stl/AWSMap.h>
14#include <aws/drs/model/PITPolicyRule.h>
15#include <utility>
16
17namespace Aws
18{
19namespace Utils
20{
21namespace Json
22{
23 class JsonValue;
24 class JsonView;
25} // namespace Json
26} // namespace Utils
27namespace drs
28{
29namespace Model
30{
31
33 {
34 public:
35 AWS_DRS_API ReplicationConfigurationTemplate() = default;
39
40
42
45 inline const Aws::String& GetArn() const { return m_arn; }
46 inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; }
47 template<typename ArnT = Aws::String>
48 void SetArn(ArnT&& value) { m_arnHasBeenSet = true; m_arn = std::forward<ArnT>(value); }
49 template<typename ArnT = Aws::String>
50 ReplicationConfigurationTemplate& WithArn(ArnT&& value) { SetArn(std::forward<ArnT>(value)); return *this;}
52
54
58 inline bool GetAssociateDefaultSecurityGroup() const { return m_associateDefaultSecurityGroup; }
59 inline bool AssociateDefaultSecurityGroupHasBeenSet() const { return m_associateDefaultSecurityGroupHasBeenSet; }
60 inline void SetAssociateDefaultSecurityGroup(bool value) { m_associateDefaultSecurityGroupHasBeenSet = true; m_associateDefaultSecurityGroup = value; }
63
65
69 inline bool GetAutoReplicateNewDisks() const { return m_autoReplicateNewDisks; }
70 inline bool AutoReplicateNewDisksHasBeenSet() const { return m_autoReplicateNewDisksHasBeenSet; }
71 inline void SetAutoReplicateNewDisks(bool value) { m_autoReplicateNewDisksHasBeenSet = true; m_autoReplicateNewDisks = value; }
74
76
80 inline long long GetBandwidthThrottling() const { return m_bandwidthThrottling; }
81 inline bool BandwidthThrottlingHasBeenSet() const { return m_bandwidthThrottlingHasBeenSet; }
82 inline void SetBandwidthThrottling(long long value) { m_bandwidthThrottlingHasBeenSet = true; m_bandwidthThrottling = value; }
85
87
90 inline bool GetCreatePublicIP() const { return m_createPublicIP; }
91 inline bool CreatePublicIPHasBeenSet() const { return m_createPublicIPHasBeenSet; }
92 inline void SetCreatePublicIP(bool value) { m_createPublicIPHasBeenSet = true; m_createPublicIP = value; }
93 inline ReplicationConfigurationTemplate& WithCreatePublicIP(bool value) { SetCreatePublicIP(value); return *this;}
95
97
100 inline ReplicationConfigurationDataPlaneRouting GetDataPlaneRouting() const { return m_dataPlaneRouting; }
101 inline bool DataPlaneRoutingHasBeenSet() const { return m_dataPlaneRoutingHasBeenSet; }
102 inline void SetDataPlaneRouting(ReplicationConfigurationDataPlaneRouting value) { m_dataPlaneRoutingHasBeenSet = true; m_dataPlaneRouting = value; }
105
107
110 inline ReplicationConfigurationDefaultLargeStagingDiskType GetDefaultLargeStagingDiskType() const { return m_defaultLargeStagingDiskType; }
111 inline bool DefaultLargeStagingDiskTypeHasBeenSet() const { return m_defaultLargeStagingDiskTypeHasBeenSet; }
112 inline void SetDefaultLargeStagingDiskType(ReplicationConfigurationDefaultLargeStagingDiskType value) { m_defaultLargeStagingDiskTypeHasBeenSet = true; m_defaultLargeStagingDiskType = value; }
115
117
120 inline ReplicationConfigurationEbsEncryption GetEbsEncryption() const { return m_ebsEncryption; }
121 inline bool EbsEncryptionHasBeenSet() const { return m_ebsEncryptionHasBeenSet; }
122 inline void SetEbsEncryption(ReplicationConfigurationEbsEncryption value) { m_ebsEncryptionHasBeenSet = true; m_ebsEncryption = value; }
125
127
130 inline const Aws::String& GetEbsEncryptionKeyArn() const { return m_ebsEncryptionKeyArn; }
131 inline bool EbsEncryptionKeyArnHasBeenSet() const { return m_ebsEncryptionKeyArnHasBeenSet; }
132 template<typename EbsEncryptionKeyArnT = Aws::String>
133 void SetEbsEncryptionKeyArn(EbsEncryptionKeyArnT&& value) { m_ebsEncryptionKeyArnHasBeenSet = true; m_ebsEncryptionKeyArn = std::forward<EbsEncryptionKeyArnT>(value); }
134 template<typename EbsEncryptionKeyArnT = Aws::String>
135 ReplicationConfigurationTemplate& WithEbsEncryptionKeyArn(EbsEncryptionKeyArnT&& value) { SetEbsEncryptionKeyArn(std::forward<EbsEncryptionKeyArnT>(value)); return *this;}
137
139
143 inline const Aws::Vector<PITPolicyRule>& GetPitPolicy() const { return m_pitPolicy; }
144 inline bool PitPolicyHasBeenSet() const { return m_pitPolicyHasBeenSet; }
145 template<typename PitPolicyT = Aws::Vector<PITPolicyRule>>
146 void SetPitPolicy(PitPolicyT&& value) { m_pitPolicyHasBeenSet = true; m_pitPolicy = std::forward<PitPolicyT>(value); }
147 template<typename PitPolicyT = Aws::Vector<PITPolicyRule>>
148 ReplicationConfigurationTemplate& WithPitPolicy(PitPolicyT&& value) { SetPitPolicy(std::forward<PitPolicyT>(value)); return *this;}
149 template<typename PitPolicyT = PITPolicyRule>
150 ReplicationConfigurationTemplate& AddPitPolicy(PitPolicyT&& value) { m_pitPolicyHasBeenSet = true; m_pitPolicy.emplace_back(std::forward<PitPolicyT>(value)); return *this; }
152
154
157 inline const Aws::String& GetReplicationConfigurationTemplateID() const { return m_replicationConfigurationTemplateID; }
158 inline bool ReplicationConfigurationTemplateIDHasBeenSet() const { return m_replicationConfigurationTemplateIDHasBeenSet; }
159 template<typename ReplicationConfigurationTemplateIDT = Aws::String>
160 void SetReplicationConfigurationTemplateID(ReplicationConfigurationTemplateIDT&& value) { m_replicationConfigurationTemplateIDHasBeenSet = true; m_replicationConfigurationTemplateID = std::forward<ReplicationConfigurationTemplateIDT>(value); }
161 template<typename ReplicationConfigurationTemplateIDT = Aws::String>
162 ReplicationConfigurationTemplate& WithReplicationConfigurationTemplateID(ReplicationConfigurationTemplateIDT&& value) { SetReplicationConfigurationTemplateID(std::forward<ReplicationConfigurationTemplateIDT>(value)); return *this;}
164
166
169 inline const Aws::String& GetReplicationServerInstanceType() const { return m_replicationServerInstanceType; }
170 inline bool ReplicationServerInstanceTypeHasBeenSet() const { return m_replicationServerInstanceTypeHasBeenSet; }
171 template<typename ReplicationServerInstanceTypeT = Aws::String>
172 void SetReplicationServerInstanceType(ReplicationServerInstanceTypeT&& value) { m_replicationServerInstanceTypeHasBeenSet = true; m_replicationServerInstanceType = std::forward<ReplicationServerInstanceTypeT>(value); }
173 template<typename ReplicationServerInstanceTypeT = Aws::String>
174 ReplicationConfigurationTemplate& WithReplicationServerInstanceType(ReplicationServerInstanceTypeT&& value) { SetReplicationServerInstanceType(std::forward<ReplicationServerInstanceTypeT>(value)); return *this;}
176
178
181 inline const Aws::Vector<Aws::String>& GetReplicationServersSecurityGroupsIDs() const { return m_replicationServersSecurityGroupsIDs; }
182 inline bool ReplicationServersSecurityGroupsIDsHasBeenSet() const { return m_replicationServersSecurityGroupsIDsHasBeenSet; }
183 template<typename ReplicationServersSecurityGroupsIDsT = Aws::Vector<Aws::String>>
184 void SetReplicationServersSecurityGroupsIDs(ReplicationServersSecurityGroupsIDsT&& value) { m_replicationServersSecurityGroupsIDsHasBeenSet = true; m_replicationServersSecurityGroupsIDs = std::forward<ReplicationServersSecurityGroupsIDsT>(value); }
185 template<typename ReplicationServersSecurityGroupsIDsT = Aws::Vector<Aws::String>>
186 ReplicationConfigurationTemplate& WithReplicationServersSecurityGroupsIDs(ReplicationServersSecurityGroupsIDsT&& value) { SetReplicationServersSecurityGroupsIDs(std::forward<ReplicationServersSecurityGroupsIDsT>(value)); return *this;}
187 template<typename ReplicationServersSecurityGroupsIDsT = Aws::String>
188 ReplicationConfigurationTemplate& AddReplicationServersSecurityGroupsIDs(ReplicationServersSecurityGroupsIDsT&& value) { m_replicationServersSecurityGroupsIDsHasBeenSet = true; m_replicationServersSecurityGroupsIDs.emplace_back(std::forward<ReplicationServersSecurityGroupsIDsT>(value)); return *this; }
190
192
195 inline const Aws::String& GetStagingAreaSubnetId() const { return m_stagingAreaSubnetId; }
196 inline bool StagingAreaSubnetIdHasBeenSet() const { return m_stagingAreaSubnetIdHasBeenSet; }
197 template<typename StagingAreaSubnetIdT = Aws::String>
198 void SetStagingAreaSubnetId(StagingAreaSubnetIdT&& value) { m_stagingAreaSubnetIdHasBeenSet = true; m_stagingAreaSubnetId = std::forward<StagingAreaSubnetIdT>(value); }
199 template<typename StagingAreaSubnetIdT = Aws::String>
200 ReplicationConfigurationTemplate& WithStagingAreaSubnetId(StagingAreaSubnetIdT&& value) { SetStagingAreaSubnetId(std::forward<StagingAreaSubnetIdT>(value)); return *this;}
202
204
208 inline const Aws::Map<Aws::String, Aws::String>& GetStagingAreaTags() const { return m_stagingAreaTags; }
209 inline bool StagingAreaTagsHasBeenSet() const { return m_stagingAreaTagsHasBeenSet; }
210 template<typename StagingAreaTagsT = Aws::Map<Aws::String, Aws::String>>
211 void SetStagingAreaTags(StagingAreaTagsT&& value) { m_stagingAreaTagsHasBeenSet = true; m_stagingAreaTags = std::forward<StagingAreaTagsT>(value); }
212 template<typename StagingAreaTagsT = Aws::Map<Aws::String, Aws::String>>
213 ReplicationConfigurationTemplate& WithStagingAreaTags(StagingAreaTagsT&& value) { SetStagingAreaTags(std::forward<StagingAreaTagsT>(value)); return *this;}
214 template<typename StagingAreaTagsKeyT = Aws::String, typename StagingAreaTagsValueT = Aws::String>
215 ReplicationConfigurationTemplate& AddStagingAreaTags(StagingAreaTagsKeyT&& key, StagingAreaTagsValueT&& value) {
216 m_stagingAreaTagsHasBeenSet = true; m_stagingAreaTags.emplace(std::forward<StagingAreaTagsKeyT>(key), std::forward<StagingAreaTagsValueT>(value)); return *this;
217 }
219
221
225 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
226 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
227 template<typename TagsT = Aws::Map<Aws::String, Aws::String>>
228 void SetTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags = std::forward<TagsT>(value); }
229 template<typename TagsT = Aws::Map<Aws::String, Aws::String>>
230 ReplicationConfigurationTemplate& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
231 template<typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
232 ReplicationConfigurationTemplate& AddTags(TagsKeyT&& key, TagsValueT&& value) {
233 m_tagsHasBeenSet = true; m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value)); return *this;
234 }
236
238
242 inline bool GetUseDedicatedReplicationServer() const { return m_useDedicatedReplicationServer; }
243 inline bool UseDedicatedReplicationServerHasBeenSet() const { return m_useDedicatedReplicationServerHasBeenSet; }
244 inline void SetUseDedicatedReplicationServer(bool value) { m_useDedicatedReplicationServerHasBeenSet = true; m_useDedicatedReplicationServer = value; }
247
249
250 inline const Aws::String& GetRequestId() const { return m_requestId; }
251 inline bool RequestIdHasBeenSet() const { return m_requestIdHasBeenSet; }
252 template<typename RequestIdT = Aws::String>
253 void SetRequestId(RequestIdT&& value) { m_requestIdHasBeenSet = true; m_requestId = std::forward<RequestIdT>(value); }
254 template<typename RequestIdT = Aws::String>
255 ReplicationConfigurationTemplate& WithRequestId(RequestIdT&& value) { SetRequestId(std::forward<RequestIdT>(value)); return *this;}
257 private:
258
259 Aws::String m_arn;
260 bool m_arnHasBeenSet = false;
261
262 bool m_associateDefaultSecurityGroup{false};
263 bool m_associateDefaultSecurityGroupHasBeenSet = false;
264
265 bool m_autoReplicateNewDisks{false};
266 bool m_autoReplicateNewDisksHasBeenSet = false;
267
268 long long m_bandwidthThrottling{0};
269 bool m_bandwidthThrottlingHasBeenSet = false;
270
271 bool m_createPublicIP{false};
272 bool m_createPublicIPHasBeenSet = false;
273
275 bool m_dataPlaneRoutingHasBeenSet = false;
276
278 bool m_defaultLargeStagingDiskTypeHasBeenSet = false;
279
281 bool m_ebsEncryptionHasBeenSet = false;
282
283 Aws::String m_ebsEncryptionKeyArn;
284 bool m_ebsEncryptionKeyArnHasBeenSet = false;
285
286 Aws::Vector<PITPolicyRule> m_pitPolicy;
287 bool m_pitPolicyHasBeenSet = false;
288
289 Aws::String m_replicationConfigurationTemplateID;
290 bool m_replicationConfigurationTemplateIDHasBeenSet = false;
291
292 Aws::String m_replicationServerInstanceType;
293 bool m_replicationServerInstanceTypeHasBeenSet = false;
294
295 Aws::Vector<Aws::String> m_replicationServersSecurityGroupsIDs;
296 bool m_replicationServersSecurityGroupsIDsHasBeenSet = false;
297
298 Aws::String m_stagingAreaSubnetId;
299 bool m_stagingAreaSubnetIdHasBeenSet = false;
300
301 Aws::Map<Aws::String, Aws::String> m_stagingAreaTags;
302 bool m_stagingAreaTagsHasBeenSet = false;
303
305 bool m_tagsHasBeenSet = false;
306
307 bool m_useDedicatedReplicationServer{false};
308 bool m_useDedicatedReplicationServerHasBeenSet = false;
309
310 Aws::String m_requestId;
311 bool m_requestIdHasBeenSet = false;
312 };
313
314} // namespace Model
315} // namespace drs
316} // namespace Aws
ReplicationConfigurationTemplate & WithTags(TagsT &&value)
ReplicationConfigurationTemplate & WithRequestId(RequestIdT &&value)
ReplicationConfigurationTemplate & WithBandwidthThrottling(long long value)
ReplicationConfigurationTemplate & AddPitPolicy(PitPolicyT &&value)
ReplicationConfigurationTemplate & WithStagingAreaTags(StagingAreaTagsT &&value)
ReplicationConfigurationTemplate & WithDefaultLargeStagingDiskType(ReplicationConfigurationDefaultLargeStagingDiskType value)
void SetDataPlaneRouting(ReplicationConfigurationDataPlaneRouting value)
ReplicationConfigurationTemplate & WithAssociateDefaultSecurityGroup(bool value)
ReplicationConfigurationTemplate & WithArn(ArnT &&value)
ReplicationConfigurationTemplate & AddTags(TagsKeyT &&key, TagsValueT &&value)
void SetReplicationConfigurationTemplateID(ReplicationConfigurationTemplateIDT &&value)
ReplicationConfigurationTemplate & WithPitPolicy(PitPolicyT &&value)
AWS_DRS_API ReplicationConfigurationTemplate(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< PITPolicyRule > & GetPitPolicy() const
ReplicationConfigurationTemplate & WithUseDedicatedReplicationServer(bool value)
ReplicationConfigurationDataPlaneRouting GetDataPlaneRouting() const
ReplicationConfigurationTemplate & WithEbsEncryption(ReplicationConfigurationEbsEncryption value)
void SetEbsEncryption(ReplicationConfigurationEbsEncryption value)
ReplicationConfigurationTemplate & AddReplicationServersSecurityGroupsIDs(ReplicationServersSecurityGroupsIDsT &&value)
ReplicationConfigurationTemplate & WithReplicationConfigurationTemplateID(ReplicationConfigurationTemplateIDT &&value)
ReplicationConfigurationTemplate & WithAutoReplicateNewDisks(bool value)
const Aws::Vector< Aws::String > & GetReplicationServersSecurityGroupsIDs() const
const Aws::Map< Aws::String, Aws::String > & GetTags() const
AWS_DRS_API Aws::Utils::Json::JsonValue Jsonize() const
ReplicationConfigurationTemplate & AddStagingAreaTags(StagingAreaTagsKeyT &&key, StagingAreaTagsValueT &&value)
ReplicationConfigurationTemplate & WithCreatePublicIP(bool value)
ReplicationConfigurationEbsEncryption GetEbsEncryption() const
ReplicationConfigurationTemplate & WithStagingAreaSubnetId(StagingAreaSubnetIdT &&value)
ReplicationConfigurationTemplate & WithReplicationServersSecurityGroupsIDs(ReplicationServersSecurityGroupsIDsT &&value)
ReplicationConfigurationTemplate & WithEbsEncryptionKeyArn(EbsEncryptionKeyArnT &&value)
AWS_DRS_API ReplicationConfigurationTemplate & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetReplicationServerInstanceType(ReplicationServerInstanceTypeT &&value)
ReplicationConfigurationDefaultLargeStagingDiskType GetDefaultLargeStagingDiskType() const
ReplicationConfigurationTemplate & WithDataPlaneRouting(ReplicationConfigurationDataPlaneRouting value)
const Aws::Map< Aws::String, Aws::String > & GetStagingAreaTags() const
ReplicationConfigurationTemplate & WithReplicationServerInstanceType(ReplicationServerInstanceTypeT &&value)
void SetReplicationServersSecurityGroupsIDs(ReplicationServersSecurityGroupsIDsT &&value)
void SetDefaultLargeStagingDiskType(ReplicationConfigurationDefaultLargeStagingDiskType 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
Aws::Utils::Json::JsonValue JsonValue