AWS SDK for C++

AWS SDK for C++ Version 1.11.612

Loading...
Searching...
No Matches
CreateReplicationConfigurationTemplateRequest.h
1
6#pragma once
7#include <aws/drs/Drs_EXPORTS.h>
8#include <aws/drs/DrsRequest.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/AWSString.h>
13#include <aws/core/utils/memory/stl/AWSVector.h>
14#include <aws/core/utils/memory/stl/AWSMap.h>
15#include <aws/drs/model/PITPolicyRule.h>
16#include <utility>
17
18namespace Aws
19{
20namespace drs
21{
22namespace Model
23{
24
28 {
29 public:
31
32 // Service request name is the Operation name which will send this request out,
33 // each operation should has unique request name, so that we can get operation's name from this request.
34 // Note: this is not true for response, multiple operations may have the same response name,
35 // so we can not get operation's name from response.
36 inline virtual const char* GetServiceRequestName() const override { return "CreateReplicationConfigurationTemplate"; }
37
38 AWS_DRS_API Aws::String SerializePayload() const override;
39
40
42
46 inline bool GetAssociateDefaultSecurityGroup() const { return m_associateDefaultSecurityGroup; }
47 inline bool AssociateDefaultSecurityGroupHasBeenSet() const { return m_associateDefaultSecurityGroupHasBeenSet; }
48 inline void SetAssociateDefaultSecurityGroup(bool value) { m_associateDefaultSecurityGroupHasBeenSet = true; m_associateDefaultSecurityGroup = value; }
51
53
57 inline bool GetAutoReplicateNewDisks() const { return m_autoReplicateNewDisks; }
58 inline bool AutoReplicateNewDisksHasBeenSet() const { return m_autoReplicateNewDisksHasBeenSet; }
59 inline void SetAutoReplicateNewDisks(bool value) { m_autoReplicateNewDisksHasBeenSet = true; m_autoReplicateNewDisks = value; }
62
64
68 inline long long GetBandwidthThrottling() const { return m_bandwidthThrottling; }
69 inline bool BandwidthThrottlingHasBeenSet() const { return m_bandwidthThrottlingHasBeenSet; }
70 inline void SetBandwidthThrottling(long long value) { m_bandwidthThrottlingHasBeenSet = true; m_bandwidthThrottling = value; }
73
75
78 inline bool GetCreatePublicIP() const { return m_createPublicIP; }
79 inline bool CreatePublicIPHasBeenSet() const { return m_createPublicIPHasBeenSet; }
80 inline void SetCreatePublicIP(bool value) { m_createPublicIPHasBeenSet = true; m_createPublicIP = value; }
83
85
88 inline ReplicationConfigurationDataPlaneRouting GetDataPlaneRouting() const { return m_dataPlaneRouting; }
89 inline bool DataPlaneRoutingHasBeenSet() const { return m_dataPlaneRoutingHasBeenSet; }
90 inline void SetDataPlaneRouting(ReplicationConfigurationDataPlaneRouting value) { m_dataPlaneRoutingHasBeenSet = true; m_dataPlaneRouting = value; }
93
95
98 inline ReplicationConfigurationDefaultLargeStagingDiskType GetDefaultLargeStagingDiskType() const { return m_defaultLargeStagingDiskType; }
99 inline bool DefaultLargeStagingDiskTypeHasBeenSet() const { return m_defaultLargeStagingDiskTypeHasBeenSet; }
100 inline void SetDefaultLargeStagingDiskType(ReplicationConfigurationDefaultLargeStagingDiskType value) { m_defaultLargeStagingDiskTypeHasBeenSet = true; m_defaultLargeStagingDiskType = value; }
103
105
108 inline ReplicationConfigurationEbsEncryption GetEbsEncryption() const { return m_ebsEncryption; }
109 inline bool EbsEncryptionHasBeenSet() const { return m_ebsEncryptionHasBeenSet; }
110 inline void SetEbsEncryption(ReplicationConfigurationEbsEncryption value) { m_ebsEncryptionHasBeenSet = true; m_ebsEncryption = value; }
113
115
118 inline const Aws::String& GetEbsEncryptionKeyArn() const { return m_ebsEncryptionKeyArn; }
119 inline bool EbsEncryptionKeyArnHasBeenSet() const { return m_ebsEncryptionKeyArnHasBeenSet; }
120 template<typename EbsEncryptionKeyArnT = Aws::String>
121 void SetEbsEncryptionKeyArn(EbsEncryptionKeyArnT&& value) { m_ebsEncryptionKeyArnHasBeenSet = true; m_ebsEncryptionKeyArn = std::forward<EbsEncryptionKeyArnT>(value); }
122 template<typename EbsEncryptionKeyArnT = Aws::String>
123 CreateReplicationConfigurationTemplateRequest& WithEbsEncryptionKeyArn(EbsEncryptionKeyArnT&& value) { SetEbsEncryptionKeyArn(std::forward<EbsEncryptionKeyArnT>(value)); return *this;}
125
127
131 inline const Aws::Vector<PITPolicyRule>& GetPitPolicy() const { return m_pitPolicy; }
132 inline bool PitPolicyHasBeenSet() const { return m_pitPolicyHasBeenSet; }
133 template<typename PitPolicyT = Aws::Vector<PITPolicyRule>>
134 void SetPitPolicy(PitPolicyT&& value) { m_pitPolicyHasBeenSet = true; m_pitPolicy = std::forward<PitPolicyT>(value); }
135 template<typename PitPolicyT = Aws::Vector<PITPolicyRule>>
136 CreateReplicationConfigurationTemplateRequest& WithPitPolicy(PitPolicyT&& value) { SetPitPolicy(std::forward<PitPolicyT>(value)); return *this;}
137 template<typename PitPolicyT = PITPolicyRule>
138 CreateReplicationConfigurationTemplateRequest& AddPitPolicy(PitPolicyT&& value) { m_pitPolicyHasBeenSet = true; m_pitPolicy.emplace_back(std::forward<PitPolicyT>(value)); return *this; }
140
142
145 inline const Aws::String& GetReplicationServerInstanceType() const { return m_replicationServerInstanceType; }
146 inline bool ReplicationServerInstanceTypeHasBeenSet() const { return m_replicationServerInstanceTypeHasBeenSet; }
147 template<typename ReplicationServerInstanceTypeT = Aws::String>
148 void SetReplicationServerInstanceType(ReplicationServerInstanceTypeT&& value) { m_replicationServerInstanceTypeHasBeenSet = true; m_replicationServerInstanceType = std::forward<ReplicationServerInstanceTypeT>(value); }
149 template<typename ReplicationServerInstanceTypeT = Aws::String>
150 CreateReplicationConfigurationTemplateRequest& WithReplicationServerInstanceType(ReplicationServerInstanceTypeT&& value) { SetReplicationServerInstanceType(std::forward<ReplicationServerInstanceTypeT>(value)); return *this;}
152
154
157 inline const Aws::Vector<Aws::String>& GetReplicationServersSecurityGroupsIDs() const { return m_replicationServersSecurityGroupsIDs; }
158 inline bool ReplicationServersSecurityGroupsIDsHasBeenSet() const { return m_replicationServersSecurityGroupsIDsHasBeenSet; }
159 template<typename ReplicationServersSecurityGroupsIDsT = Aws::Vector<Aws::String>>
160 void SetReplicationServersSecurityGroupsIDs(ReplicationServersSecurityGroupsIDsT&& value) { m_replicationServersSecurityGroupsIDsHasBeenSet = true; m_replicationServersSecurityGroupsIDs = std::forward<ReplicationServersSecurityGroupsIDsT>(value); }
161 template<typename ReplicationServersSecurityGroupsIDsT = Aws::Vector<Aws::String>>
162 CreateReplicationConfigurationTemplateRequest& WithReplicationServersSecurityGroupsIDs(ReplicationServersSecurityGroupsIDsT&& value) { SetReplicationServersSecurityGroupsIDs(std::forward<ReplicationServersSecurityGroupsIDsT>(value)); return *this;}
163 template<typename ReplicationServersSecurityGroupsIDsT = Aws::String>
164 CreateReplicationConfigurationTemplateRequest& AddReplicationServersSecurityGroupsIDs(ReplicationServersSecurityGroupsIDsT&& value) { m_replicationServersSecurityGroupsIDsHasBeenSet = true; m_replicationServersSecurityGroupsIDs.emplace_back(std::forward<ReplicationServersSecurityGroupsIDsT>(value)); return *this; }
166
168
171 inline const Aws::String& GetStagingAreaSubnetId() const { return m_stagingAreaSubnetId; }
172 inline bool StagingAreaSubnetIdHasBeenSet() const { return m_stagingAreaSubnetIdHasBeenSet; }
173 template<typename StagingAreaSubnetIdT = Aws::String>
174 void SetStagingAreaSubnetId(StagingAreaSubnetIdT&& value) { m_stagingAreaSubnetIdHasBeenSet = true; m_stagingAreaSubnetId = std::forward<StagingAreaSubnetIdT>(value); }
175 template<typename StagingAreaSubnetIdT = Aws::String>
176 CreateReplicationConfigurationTemplateRequest& WithStagingAreaSubnetId(StagingAreaSubnetIdT&& value) { SetStagingAreaSubnetId(std::forward<StagingAreaSubnetIdT>(value)); return *this;}
178
180
184 inline const Aws::Map<Aws::String, Aws::String>& GetStagingAreaTags() const { return m_stagingAreaTags; }
185 inline bool StagingAreaTagsHasBeenSet() const { return m_stagingAreaTagsHasBeenSet; }
186 template<typename StagingAreaTagsT = Aws::Map<Aws::String, Aws::String>>
187 void SetStagingAreaTags(StagingAreaTagsT&& value) { m_stagingAreaTagsHasBeenSet = true; m_stagingAreaTags = std::forward<StagingAreaTagsT>(value); }
188 template<typename StagingAreaTagsT = Aws::Map<Aws::String, Aws::String>>
189 CreateReplicationConfigurationTemplateRequest& WithStagingAreaTags(StagingAreaTagsT&& value) { SetStagingAreaTags(std::forward<StagingAreaTagsT>(value)); return *this;}
190 template<typename StagingAreaTagsKeyT = Aws::String, typename StagingAreaTagsValueT = Aws::String>
191 CreateReplicationConfigurationTemplateRequest& AddStagingAreaTags(StagingAreaTagsKeyT&& key, StagingAreaTagsValueT&& value) {
192 m_stagingAreaTagsHasBeenSet = true; m_stagingAreaTags.emplace(std::forward<StagingAreaTagsKeyT>(key), std::forward<StagingAreaTagsValueT>(value)); return *this;
193 }
195
197
201 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
202 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
203 template<typename TagsT = Aws::Map<Aws::String, Aws::String>>
204 void SetTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags = std::forward<TagsT>(value); }
205 template<typename TagsT = Aws::Map<Aws::String, Aws::String>>
206 CreateReplicationConfigurationTemplateRequest& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
207 template<typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
208 CreateReplicationConfigurationTemplateRequest& AddTags(TagsKeyT&& key, TagsValueT&& value) {
209 m_tagsHasBeenSet = true; m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value)); return *this;
210 }
212
214
218 inline bool GetUseDedicatedReplicationServer() const { return m_useDedicatedReplicationServer; }
219 inline bool UseDedicatedReplicationServerHasBeenSet() const { return m_useDedicatedReplicationServerHasBeenSet; }
220 inline void SetUseDedicatedReplicationServer(bool value) { m_useDedicatedReplicationServerHasBeenSet = true; m_useDedicatedReplicationServer = value; }
223 private:
224
225 bool m_associateDefaultSecurityGroup{false};
226 bool m_associateDefaultSecurityGroupHasBeenSet = false;
227
228 bool m_autoReplicateNewDisks{false};
229 bool m_autoReplicateNewDisksHasBeenSet = false;
230
231 long long m_bandwidthThrottling{0};
232 bool m_bandwidthThrottlingHasBeenSet = false;
233
234 bool m_createPublicIP{false};
235 bool m_createPublicIPHasBeenSet = false;
236
238 bool m_dataPlaneRoutingHasBeenSet = false;
239
241 bool m_defaultLargeStagingDiskTypeHasBeenSet = false;
242
244 bool m_ebsEncryptionHasBeenSet = false;
245
246 Aws::String m_ebsEncryptionKeyArn;
247 bool m_ebsEncryptionKeyArnHasBeenSet = false;
248
249 Aws::Vector<PITPolicyRule> m_pitPolicy;
250 bool m_pitPolicyHasBeenSet = false;
251
252 Aws::String m_replicationServerInstanceType;
253 bool m_replicationServerInstanceTypeHasBeenSet = false;
254
255 Aws::Vector<Aws::String> m_replicationServersSecurityGroupsIDs;
256 bool m_replicationServersSecurityGroupsIDsHasBeenSet = false;
257
258 Aws::String m_stagingAreaSubnetId;
259 bool m_stagingAreaSubnetIdHasBeenSet = false;
260
261 Aws::Map<Aws::String, Aws::String> m_stagingAreaTags;
262 bool m_stagingAreaTagsHasBeenSet = false;
263
265 bool m_tagsHasBeenSet = false;
266
267 bool m_useDedicatedReplicationServer{false};
268 bool m_useDedicatedReplicationServerHasBeenSet = false;
269 };
270
271} // namespace Model
272} // namespace drs
273} // namespace Aws
CreateReplicationConfigurationTemplateRequest & WithStagingAreaSubnetId(StagingAreaSubnetIdT &&value)
CreateReplicationConfigurationTemplateRequest & WithCreatePublicIP(bool value)
CreateReplicationConfigurationTemplateRequest & AddTags(TagsKeyT &&key, TagsValueT &&value)
AWS_DRS_API Aws::String SerializePayload() const override
CreateReplicationConfigurationTemplateRequest & WithDefaultLargeStagingDiskType(ReplicationConfigurationDefaultLargeStagingDiskType value)
CreateReplicationConfigurationTemplateRequest & WithAssociateDefaultSecurityGroup(bool value)
CreateReplicationConfigurationTemplateRequest & WithStagingAreaTags(StagingAreaTagsT &&value)
CreateReplicationConfigurationTemplateRequest & WithReplicationServersSecurityGroupsIDs(ReplicationServersSecurityGroupsIDsT &&value)
CreateReplicationConfigurationTemplateRequest & WithPitPolicy(PitPolicyT &&value)
CreateReplicationConfigurationTemplateRequest & WithEbsEncryption(ReplicationConfigurationEbsEncryption value)
CreateReplicationConfigurationTemplateRequest & AddStagingAreaTags(StagingAreaTagsKeyT &&key, StagingAreaTagsValueT &&value)
CreateReplicationConfigurationTemplateRequest & WithReplicationServerInstanceType(ReplicationServerInstanceTypeT &&value)
CreateReplicationConfigurationTemplateRequest & WithBandwidthThrottling(long long value)
CreateReplicationConfigurationTemplateRequest & WithDataPlaneRouting(ReplicationConfigurationDataPlaneRouting value)
CreateReplicationConfigurationTemplateRequest & WithEbsEncryptionKeyArn(EbsEncryptionKeyArnT &&value)
CreateReplicationConfigurationTemplateRequest & WithUseDedicatedReplicationServer(bool value)
CreateReplicationConfigurationTemplateRequest & WithAutoReplicateNewDisks(bool value)
void SetDefaultLargeStagingDiskType(ReplicationConfigurationDefaultLargeStagingDiskType value)
ReplicationConfigurationDefaultLargeStagingDiskType GetDefaultLargeStagingDiskType() const
CreateReplicationConfigurationTemplateRequest & AddReplicationServersSecurityGroupsIDs(ReplicationServersSecurityGroupsIDsT &&value)
CreateReplicationConfigurationTemplateRequest & AddPitPolicy(PitPolicyT &&value)
CreateReplicationConfigurationTemplateRequest & WithTags(TagsT &&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