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/Drs_EXPORTS.h>
11#include <aws/drs/model/PITPolicyRule.h>
12#include <aws/drs/model/ReplicationConfigurationDataPlaneRouting.h>
13#include <aws/drs/model/ReplicationConfigurationDefaultLargeStagingDiskType.h>
14#include <aws/drs/model/ReplicationConfigurationEbsEncryption.h>
19template <
typename RESULT_TYPE>
20class AmazonWebServiceResult;
41 template <
typename ArnT = Aws::String>
43 m_arnHasBeenSet =
true;
44 m_arn = std::forward<ArnT>(value);
46 template <
typename ArnT = Aws::String>
48 SetArn(std::forward<ArnT>(value));
60 m_associateDefaultSecurityGroupHasBeenSet =
true;
61 m_associateDefaultSecurityGroup = value;
76 m_autoReplicateNewDisksHasBeenSet =
true;
77 m_autoReplicateNewDisks = value;
92 m_bandwidthThrottlingHasBeenSet =
true;
93 m_bandwidthThrottling = value;
107 m_createPublicIPHasBeenSet =
true;
108 m_createPublicIP = value;
122 m_dataPlaneRoutingHasBeenSet =
true;
123 m_dataPlaneRouting = value;
136 return m_defaultLargeStagingDiskType;
139 m_defaultLargeStagingDiskTypeHasBeenSet =
true;
140 m_defaultLargeStagingDiskType = value;
155 m_ebsEncryptionHasBeenSet =
true;
156 m_ebsEncryption = value;
169 template <
typename EbsEncryptionKeyArnT = Aws::String>
171 m_ebsEncryptionKeyArnHasBeenSet =
true;
172 m_ebsEncryptionKeyArn = std::forward<EbsEncryptionKeyArnT>(value);
174 template <
typename EbsEncryptionKeyArnT = Aws::String>
187 template <
typename PitPolicyT = Aws::Vector<PITPolicyRule>>
189 m_pitPolicyHasBeenSet =
true;
190 m_pitPolicy = std::forward<PitPolicyT>(value);
192 template <
typename PitPolicyT = Aws::Vector<PITPolicyRule>>
197 template <
typename PitPolicyT = PITPolicyRule>
199 m_pitPolicyHasBeenSet =
true;
200 m_pitPolicy.emplace_back(std::forward<PitPolicyT>(value));
210 template <
typename ReplicationConfigurationTemplateIDT = Aws::String>
212 m_replicationConfigurationTemplateIDHasBeenSet =
true;
213 m_replicationConfigurationTemplateID = std::forward<ReplicationConfigurationTemplateIDT>(value);
215 template <
typename ReplicationConfigurationTemplateIDT = Aws::String>
227 template <
typename ReplicationServerInstanceTypeT = Aws::String>
229 m_replicationServerInstanceTypeHasBeenSet =
true;
230 m_replicationServerInstanceType = std::forward<ReplicationServerInstanceTypeT>(value);
232 template <
typename ReplicationServerInstanceTypeT = Aws::String>
244 template <
typename ReplicationServersSecurityGroupsIDsT = Aws::Vector<Aws::String>>
246 m_replicationServersSecurityGroupsIDsHasBeenSet =
true;
247 m_replicationServersSecurityGroupsIDs = std::forward<ReplicationServersSecurityGroupsIDsT>(value);
249 template <
typename ReplicationServersSecurityGroupsIDsT = Aws::Vector<Aws::String>>
254 template <
typename ReplicationServersSecurityGroupsIDsT = Aws::String>
256 m_replicationServersSecurityGroupsIDsHasBeenSet =
true;
257 m_replicationServersSecurityGroupsIDs.emplace_back(std::forward<ReplicationServersSecurityGroupsIDsT>(value));
267 template <
typename StagingAreaSubnetIdT = Aws::String>
269 m_stagingAreaSubnetIdHasBeenSet =
true;
270 m_stagingAreaSubnetId = std::forward<StagingAreaSubnetIdT>(value);
272 template <
typename StagingAreaSubnetIdT = Aws::String>
285 template <
typename StagingAreaTagsT = Aws::Map<Aws::String, Aws::String>>
287 m_stagingAreaTagsHasBeenSet =
true;
288 m_stagingAreaTags = std::forward<StagingAreaTagsT>(value);
290 template <
typename StagingAreaTagsT = Aws::Map<Aws::String, Aws::String>>
295 template <
typename StagingAreaTagsKeyT = Aws::String,
typename StagingAreaTagsValueT = Aws::String>
297 m_stagingAreaTagsHasBeenSet =
true;
298 m_stagingAreaTags.emplace(std::forward<StagingAreaTagsKeyT>(key), std::forward<StagingAreaTagsValueT>(value));
309 template <
typename TagsT = Aws::Map<Aws::String, Aws::String>>
311 m_tagsHasBeenSet =
true;
312 m_tags = std::forward<TagsT>(value);
314 template <
typename TagsT = Aws::Map<Aws::String, Aws::String>>
316 SetTags(std::forward<TagsT>(value));
319 template <
typename TagsKeyT = Aws::String,
typename TagsValueT = Aws::String>
321 m_tagsHasBeenSet =
true;
322 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
334 m_useDedicatedReplicationServerHasBeenSet =
true;
335 m_useDedicatedReplicationServer = value;
346 template <
typename RequestIdT = Aws::String>
348 m_requestIdHasBeenSet =
true;
349 m_requestId = std::forward<RequestIdT>(value);
351 template <
typename RequestIdT = Aws::String>
360 bool m_associateDefaultSecurityGroup{
false};
362 bool m_autoReplicateNewDisks{
false};
364 long long m_bandwidthThrottling{0};
366 bool m_createPublicIP{
false};
391 bool m_useDedicatedReplicationServer{
false};
394 bool m_arnHasBeenSet =
false;
395 bool m_associateDefaultSecurityGroupHasBeenSet =
false;
396 bool m_autoReplicateNewDisksHasBeenSet =
false;
397 bool m_bandwidthThrottlingHasBeenSet =
false;
398 bool m_createPublicIPHasBeenSet =
false;
399 bool m_dataPlaneRoutingHasBeenSet =
false;
400 bool m_defaultLargeStagingDiskTypeHasBeenSet =
false;
401 bool m_ebsEncryptionHasBeenSet =
false;
402 bool m_ebsEncryptionKeyArnHasBeenSet =
false;
403 bool m_pitPolicyHasBeenSet =
false;
404 bool m_replicationConfigurationTemplateIDHasBeenSet =
false;
405 bool m_replicationServerInstanceTypeHasBeenSet =
false;
406 bool m_replicationServersSecurityGroupsIDsHasBeenSet =
false;
407 bool m_stagingAreaSubnetIdHasBeenSet =
false;
408 bool m_stagingAreaTagsHasBeenSet =
false;
409 bool m_tagsHasBeenSet =
false;
410 bool m_useDedicatedReplicationServerHasBeenSet =
false;
411 bool m_requestIdHasBeenSet =
false;
long long GetBandwidthThrottling() const
UpdateReplicationConfigurationTemplateResult & WithPitPolicy(PitPolicyT &&value)
void SetReplicationConfigurationTemplateID(ReplicationConfigurationTemplateIDT &&value)
void SetArn(ArnT &&value)
UpdateReplicationConfigurationTemplateResult & WithUseDedicatedReplicationServer(bool value)
void SetEbsEncryption(ReplicationConfigurationEbsEncryption value)
void SetStagingAreaSubnetId(StagingAreaSubnetIdT &&value)
UpdateReplicationConfigurationTemplateResult & WithBandwidthThrottling(long long value)
const Aws::Vector< PITPolicyRule > & GetPitPolicy() const
void SetAssociateDefaultSecurityGroup(bool value)
UpdateReplicationConfigurationTemplateResult & WithReplicationConfigurationTemplateID(ReplicationConfigurationTemplateIDT &&value)
void SetReplicationServersSecurityGroupsIDs(ReplicationServersSecurityGroupsIDsT &&value)
void SetReplicationServerInstanceType(ReplicationServerInstanceTypeT &&value)
void SetPitPolicy(PitPolicyT &&value)
const Aws::String & GetEbsEncryptionKeyArn() const
void SetRequestId(RequestIdT &&value)
UpdateReplicationConfigurationTemplateResult & WithCreatePublicIP(bool value)
ReplicationConfigurationDataPlaneRouting GetDataPlaneRouting() const
const Aws::Vector< Aws::String > & GetReplicationServersSecurityGroupsIDs() const
const Aws::String & GetStagingAreaSubnetId() const
ReplicationConfigurationDefaultLargeStagingDiskType GetDefaultLargeStagingDiskType() const
void SetAutoReplicateNewDisks(bool value)
UpdateReplicationConfigurationTemplateResult & WithEbsEncryption(ReplicationConfigurationEbsEncryption value)
void SetUseDedicatedReplicationServer(bool value)
UpdateReplicationConfigurationTemplateResult & WithRequestId(RequestIdT &&value)
const Aws::String & GetRequestId() const
UpdateReplicationConfigurationTemplateResult & AddPitPolicy(PitPolicyT &&value)
bool GetCreatePublicIP() const
UpdateReplicationConfigurationTemplateResult & AddStagingAreaTags(StagingAreaTagsKeyT &&key, StagingAreaTagsValueT &&value)
UpdateReplicationConfigurationTemplateResult & WithStagingAreaTags(StagingAreaTagsT &&value)
UpdateReplicationConfigurationTemplateResult & WithDataPlaneRouting(ReplicationConfigurationDataPlaneRouting value)
bool GetAssociateDefaultSecurityGroup() const
void SetDefaultLargeStagingDiskType(ReplicationConfigurationDefaultLargeStagingDiskType value)
AWS_DRS_API UpdateReplicationConfigurationTemplateResult & operator=(const Aws::AmazonWebServiceResult< Aws::Utils::Json::JsonValue > &result)
const Aws::Map< Aws::String, Aws::String > & GetTags() const
UpdateReplicationConfigurationTemplateResult & WithAssociateDefaultSecurityGroup(bool value)
bool GetUseDedicatedReplicationServer() const
UpdateReplicationConfigurationTemplateResult & WithReplicationServersSecurityGroupsIDs(ReplicationServersSecurityGroupsIDsT &&value)
UpdateReplicationConfigurationTemplateResult & WithReplicationServerInstanceType(ReplicationServerInstanceTypeT &&value)
void SetDataPlaneRouting(ReplicationConfigurationDataPlaneRouting value)
void SetCreatePublicIP(bool value)
UpdateReplicationConfigurationTemplateResult & WithStagingAreaSubnetId(StagingAreaSubnetIdT &&value)
UpdateReplicationConfigurationTemplateResult & WithAutoReplicateNewDisks(bool value)
UpdateReplicationConfigurationTemplateResult & AddReplicationServersSecurityGroupsIDs(ReplicationServersSecurityGroupsIDsT &&value)
void SetBandwidthThrottling(long long value)
void SetTags(TagsT &&value)
AWS_DRS_API UpdateReplicationConfigurationTemplateResult()=default
UpdateReplicationConfigurationTemplateResult & WithArn(ArnT &&value)
UpdateReplicationConfigurationTemplateResult & WithEbsEncryptionKeyArn(EbsEncryptionKeyArnT &&value)
const Aws::String & GetArn() const
UpdateReplicationConfigurationTemplateResult & AddTags(TagsKeyT &&key, TagsValueT &&value)
bool GetAutoReplicateNewDisks() const
const Aws::String & GetReplicationConfigurationTemplateID() const
void SetEbsEncryptionKeyArn(EbsEncryptionKeyArnT &&value)
UpdateReplicationConfigurationTemplateResult & WithTags(TagsT &&value)
AWS_DRS_API UpdateReplicationConfigurationTemplateResult(const Aws::AmazonWebServiceResult< Aws::Utils::Json::JsonValue > &result)
const Aws::String & GetReplicationServerInstanceType() const
const Aws::Map< Aws::String, Aws::String > & GetStagingAreaTags() const
ReplicationConfigurationEbsEncryption GetEbsEncryption() const
UpdateReplicationConfigurationTemplateResult & WithDefaultLargeStagingDiskType(ReplicationConfigurationDefaultLargeStagingDiskType value)
void SetStagingAreaTags(StagingAreaTagsT &&value)
ReplicationConfigurationDataPlaneRouting
ReplicationConfigurationEbsEncryption
ReplicationConfigurationDefaultLargeStagingDiskType
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