AWS SDK for C++

AWS SDK for C++ Version 1.11.717

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
17#include <utility>
18
19namespace Aws {
20namespace mgn {
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 "CreateReplicationConfigurationTemplate"; }
34
35 AWS_MGN_API Aws::String SerializePayload() const override;
36
38
42 inline const Aws::String& GetStagingAreaSubnetId() const { return m_stagingAreaSubnetId; }
43 inline bool StagingAreaSubnetIdHasBeenSet() const { return m_stagingAreaSubnetIdHasBeenSet; }
44 template <typename StagingAreaSubnetIdT = Aws::String>
45 void SetStagingAreaSubnetId(StagingAreaSubnetIdT&& value) {
46 m_stagingAreaSubnetIdHasBeenSet = true;
47 m_stagingAreaSubnetId = std::forward<StagingAreaSubnetIdT>(value);
48 }
49 template <typename StagingAreaSubnetIdT = Aws::String>
51 SetStagingAreaSubnetId(std::forward<StagingAreaSubnetIdT>(value));
52 return *this;
53 }
55
57
61 inline bool GetAssociateDefaultSecurityGroup() const { return m_associateDefaultSecurityGroup; }
62 inline bool AssociateDefaultSecurityGroupHasBeenSet() const { return m_associateDefaultSecurityGroupHasBeenSet; }
63 inline void SetAssociateDefaultSecurityGroup(bool value) {
64 m_associateDefaultSecurityGroupHasBeenSet = true;
65 m_associateDefaultSecurityGroup = value;
66 }
69 return *this;
70 }
72
74
78 inline const Aws::Vector<Aws::String>& GetReplicationServersSecurityGroupsIDs() const { return m_replicationServersSecurityGroupsIDs; }
79 inline bool ReplicationServersSecurityGroupsIDsHasBeenSet() const { return m_replicationServersSecurityGroupsIDsHasBeenSet; }
80 template <typename ReplicationServersSecurityGroupsIDsT = Aws::Vector<Aws::String>>
81 void SetReplicationServersSecurityGroupsIDs(ReplicationServersSecurityGroupsIDsT&& value) {
82 m_replicationServersSecurityGroupsIDsHasBeenSet = true;
83 m_replicationServersSecurityGroupsIDs = std::forward<ReplicationServersSecurityGroupsIDsT>(value);
84 }
85 template <typename ReplicationServersSecurityGroupsIDsT = Aws::Vector<Aws::String>>
87 SetReplicationServersSecurityGroupsIDs(std::forward<ReplicationServersSecurityGroupsIDsT>(value));
88 return *this;
89 }
90 template <typename ReplicationServersSecurityGroupsIDsT = Aws::String>
92 m_replicationServersSecurityGroupsIDsHasBeenSet = true;
93 m_replicationServersSecurityGroupsIDs.emplace_back(std::forward<ReplicationServersSecurityGroupsIDsT>(value));
94 return *this;
95 }
97
99
103 inline const Aws::String& GetReplicationServerInstanceType() const { return m_replicationServerInstanceType; }
104 inline bool ReplicationServerInstanceTypeHasBeenSet() const { return m_replicationServerInstanceTypeHasBeenSet; }
105 template <typename ReplicationServerInstanceTypeT = Aws::String>
106 void SetReplicationServerInstanceType(ReplicationServerInstanceTypeT&& value) {
107 m_replicationServerInstanceTypeHasBeenSet = true;
108 m_replicationServerInstanceType = std::forward<ReplicationServerInstanceTypeT>(value);
109 }
110 template <typename ReplicationServerInstanceTypeT = Aws::String>
112 SetReplicationServerInstanceType(std::forward<ReplicationServerInstanceTypeT>(value));
113 return *this;
114 }
116
118
122 inline bool GetUseDedicatedReplicationServer() const { return m_useDedicatedReplicationServer; }
123 inline bool UseDedicatedReplicationServerHasBeenSet() const { return m_useDedicatedReplicationServerHasBeenSet; }
124 inline void SetUseDedicatedReplicationServer(bool value) {
125 m_useDedicatedReplicationServerHasBeenSet = true;
126 m_useDedicatedReplicationServer = value;
127 }
130 return *this;
131 }
133
135
140 return m_defaultLargeStagingDiskType;
141 }
142 inline bool DefaultLargeStagingDiskTypeHasBeenSet() const { return m_defaultLargeStagingDiskTypeHasBeenSet; }
144 m_defaultLargeStagingDiskTypeHasBeenSet = true;
145 m_defaultLargeStagingDiskType = value;
146 }
150 return *this;
151 }
153
155
159 inline ReplicationConfigurationEbsEncryption GetEbsEncryption() const { return m_ebsEncryption; }
160 inline bool EbsEncryptionHasBeenSet() const { return m_ebsEncryptionHasBeenSet; }
162 m_ebsEncryptionHasBeenSet = true;
163 m_ebsEncryption = value;
164 }
166 SetEbsEncryption(value);
167 return *this;
168 }
170
172
176 inline const Aws::String& GetEbsEncryptionKeyArn() const { return m_ebsEncryptionKeyArn; }
177 inline bool EbsEncryptionKeyArnHasBeenSet() const { return m_ebsEncryptionKeyArnHasBeenSet; }
178 template <typename EbsEncryptionKeyArnT = Aws::String>
179 void SetEbsEncryptionKeyArn(EbsEncryptionKeyArnT&& value) {
180 m_ebsEncryptionKeyArnHasBeenSet = true;
181 m_ebsEncryptionKeyArn = std::forward<EbsEncryptionKeyArnT>(value);
182 }
183 template <typename EbsEncryptionKeyArnT = Aws::String>
185 SetEbsEncryptionKeyArn(std::forward<EbsEncryptionKeyArnT>(value));
186 return *this;
187 }
189
191
195 inline long long GetBandwidthThrottling() const { return m_bandwidthThrottling; }
196 inline bool BandwidthThrottlingHasBeenSet() const { return m_bandwidthThrottlingHasBeenSet; }
197 inline void SetBandwidthThrottling(long long value) {
198 m_bandwidthThrottlingHasBeenSet = true;
199 m_bandwidthThrottling = value;
200 }
203 return *this;
204 }
206
208
212 inline ReplicationConfigurationDataPlaneRouting GetDataPlaneRouting() const { return m_dataPlaneRouting; }
213 inline bool DataPlaneRoutingHasBeenSet() const { return m_dataPlaneRoutingHasBeenSet; }
215 m_dataPlaneRoutingHasBeenSet = true;
216 m_dataPlaneRouting = value;
217 }
219 SetDataPlaneRouting(value);
220 return *this;
221 }
223
225
229 inline bool GetCreatePublicIP() const { return m_createPublicIP; }
230 inline bool CreatePublicIPHasBeenSet() const { return m_createPublicIPHasBeenSet; }
231 inline void SetCreatePublicIP(bool value) {
232 m_createPublicIPHasBeenSet = true;
233 m_createPublicIP = value;
234 }
236 SetCreatePublicIP(value);
237 return *this;
238 }
240
242
246 inline const Aws::Map<Aws::String, Aws::String>& GetStagingAreaTags() const { return m_stagingAreaTags; }
247 inline bool StagingAreaTagsHasBeenSet() const { return m_stagingAreaTagsHasBeenSet; }
248 template <typename StagingAreaTagsT = Aws::Map<Aws::String, Aws::String>>
249 void SetStagingAreaTags(StagingAreaTagsT&& value) {
250 m_stagingAreaTagsHasBeenSet = true;
251 m_stagingAreaTags = std::forward<StagingAreaTagsT>(value);
252 }
253 template <typename StagingAreaTagsT = Aws::Map<Aws::String, Aws::String>>
255 SetStagingAreaTags(std::forward<StagingAreaTagsT>(value));
256 return *this;
257 }
258 template <typename StagingAreaTagsKeyT = Aws::String, typename StagingAreaTagsValueT = Aws::String>
259 CreateReplicationConfigurationTemplateRequest& AddStagingAreaTags(StagingAreaTagsKeyT&& key, StagingAreaTagsValueT&& value) {
260 m_stagingAreaTagsHasBeenSet = true;
261 m_stagingAreaTags.emplace(std::forward<StagingAreaTagsKeyT>(key), std::forward<StagingAreaTagsValueT>(value));
262 return *this;
263 }
265
267
271 inline bool GetUseFipsEndpoint() const { return m_useFipsEndpoint; }
272 inline bool UseFipsEndpointHasBeenSet() const { return m_useFipsEndpointHasBeenSet; }
273 inline void SetUseFipsEndpoint(bool value) {
274 m_useFipsEndpointHasBeenSet = true;
275 m_useFipsEndpoint = value;
276 }
278 SetUseFipsEndpoint(value);
279 return *this;
280 }
282
284
287 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
288 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
289 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
290 void SetTags(TagsT&& value) {
291 m_tagsHasBeenSet = true;
292 m_tags = std::forward<TagsT>(value);
293 }
294 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
296 SetTags(std::forward<TagsT>(value));
297 return *this;
298 }
299 template <typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
300 CreateReplicationConfigurationTemplateRequest& AddTags(TagsKeyT&& key, TagsValueT&& value) {
301 m_tagsHasBeenSet = true;
302 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
303 return *this;
304 }
306
308
311 inline InternetProtocol GetInternetProtocol() const { return m_internetProtocol; }
312 inline bool InternetProtocolHasBeenSet() const { return m_internetProtocolHasBeenSet; }
314 m_internetProtocolHasBeenSet = true;
315 m_internetProtocol = value;
316 }
318 SetInternetProtocol(value);
319 return *this;
320 }
322 private:
323 Aws::String m_stagingAreaSubnetId;
324
325 bool m_associateDefaultSecurityGroup{false};
326
327 Aws::Vector<Aws::String> m_replicationServersSecurityGroupsIDs;
328
329 Aws::String m_replicationServerInstanceType;
330
331 bool m_useDedicatedReplicationServer{false};
332
333 ReplicationConfigurationDefaultLargeStagingDiskType m_defaultLargeStagingDiskType{
335
337
338 Aws::String m_ebsEncryptionKeyArn;
339
340 long long m_bandwidthThrottling{0};
341
343
344 bool m_createPublicIP{false};
345
346 Aws::Map<Aws::String, Aws::String> m_stagingAreaTags;
347
348 bool m_useFipsEndpoint{false};
349
351
353 bool m_stagingAreaSubnetIdHasBeenSet = false;
354 bool m_associateDefaultSecurityGroupHasBeenSet = false;
355 bool m_replicationServersSecurityGroupsIDsHasBeenSet = false;
356 bool m_replicationServerInstanceTypeHasBeenSet = false;
357 bool m_useDedicatedReplicationServerHasBeenSet = false;
358 bool m_defaultLargeStagingDiskTypeHasBeenSet = false;
359 bool m_ebsEncryptionHasBeenSet = false;
360 bool m_ebsEncryptionKeyArnHasBeenSet = false;
361 bool m_bandwidthThrottlingHasBeenSet = false;
362 bool m_dataPlaneRoutingHasBeenSet = false;
363 bool m_createPublicIPHasBeenSet = false;
364 bool m_stagingAreaTagsHasBeenSet = false;
365 bool m_useFipsEndpointHasBeenSet = false;
366 bool m_tagsHasBeenSet = false;
367 bool m_internetProtocolHasBeenSet = false;
368};
369
370} // namespace Model
371} // namespace mgn
372} // 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 & 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