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#include <aws/mgn/model/StorageConfiguration.h>
34 inline virtual const char*
GetServiceRequestName()
const override {
return "UpdateReplicationConfigurationTemplate"; }
44 template <
typename ReplicationConfigurationTemplateIDT = Aws::String>
46 m_replicationConfigurationTemplateIDHasBeenSet =
true;
47 m_replicationConfigurationTemplateID = std::forward<ReplicationConfigurationTemplateIDT>(value);
49 template <
typename ReplicationConfigurationTemplateIDT = Aws::String>
62 template <
typename ArnT = Aws::String>
64 m_arnHasBeenSet =
true;
65 m_arn = std::forward<ArnT>(value);
67 template <
typename ArnT = Aws::String>
69 SetArn(std::forward<ArnT>(value));
80 template <
typename StagingAreaSubnetIdT = Aws::String>
82 m_stagingAreaSubnetIdHasBeenSet =
true;
83 m_stagingAreaSubnetId = std::forward<StagingAreaSubnetIdT>(value);
85 template <
typename StagingAreaSubnetIdT = Aws::String>
100 m_associateDefaultSecurityGroupHasBeenSet =
true;
101 m_associateDefaultSecurityGroup = value;
116 template <
typename ReplicationServersSecurityGroupsIDsT = Aws::Vector<Aws::String>>
118 m_replicationServersSecurityGroupsIDsHasBeenSet =
true;
119 m_replicationServersSecurityGroupsIDs = std::forward<ReplicationServersSecurityGroupsIDsT>(value);
121 template <
typename ReplicationServersSecurityGroupsIDsT = Aws::Vector<Aws::String>>
126 template <
typename ReplicationServersSecurityGroupsIDsT = Aws::String>
128 m_replicationServersSecurityGroupsIDsHasBeenSet =
true;
129 m_replicationServersSecurityGroupsIDs.emplace_back(std::forward<ReplicationServersSecurityGroupsIDsT>(value));
141 template <
typename ReplicationServerInstanceTypeT = Aws::String>
143 m_replicationServerInstanceTypeHasBeenSet =
true;
144 m_replicationServerInstanceType = std::forward<ReplicationServerInstanceTypeT>(value);
146 template <
typename ReplicationServerInstanceTypeT = Aws::String>
161 m_useDedicatedReplicationServerHasBeenSet =
true;
162 m_useDedicatedReplicationServer = value;
176 return m_defaultLargeStagingDiskType;
180 m_defaultLargeStagingDiskTypeHasBeenSet =
true;
181 m_defaultLargeStagingDiskType = value;
197 m_ebsEncryptionHasBeenSet =
true;
198 m_ebsEncryption = value;
212 template <
typename EbsEncryptionKeyArnT = Aws::String>
214 m_ebsEncryptionKeyArnHasBeenSet =
true;
215 m_ebsEncryptionKeyArn = std::forward<EbsEncryptionKeyArnT>(value);
217 template <
typename EbsEncryptionKeyArnT = Aws::String>
231 m_bandwidthThrottlingHasBeenSet =
true;
232 m_bandwidthThrottling = value;
247 m_dataPlaneRoutingHasBeenSet =
true;
248 m_dataPlaneRouting = value;
263 m_createPublicIPHasBeenSet =
true;
264 m_createPublicIP = value;
278 template <
typename StagingAreaTagsT = Aws::Map<Aws::String, Aws::String>>
280 m_stagingAreaTagsHasBeenSet =
true;
281 m_stagingAreaTags = std::forward<StagingAreaTagsT>(value);
283 template <
typename StagingAreaTagsT = Aws::Map<Aws::String, Aws::String>>
288 template <
typename StagingAreaTagsKeyT = Aws::String,
typename StagingAreaTagsValueT = Aws::String>
290 m_stagingAreaTagsHasBeenSet =
true;
291 m_stagingAreaTags.emplace(std::forward<StagingAreaTagsKeyT>(key), std::forward<StagingAreaTagsValueT>(value));
303 m_useFipsEndpointHasBeenSet =
true;
304 m_useFipsEndpoint = value;
319 m_internetProtocolHasBeenSet =
true;
320 m_internetProtocol = value;
336 m_storeSnapshotOnLocalZoneHasBeenSet =
true;
337 m_storeSnapshotOnLocalZone = value;
351 template <
typename StorageConfigurationT = StorageConfiguration>
353 m_storageConfigurationHasBeenSet =
true;
354 m_storageConfiguration = std::forward<StorageConfigurationT>(value);
356 template <
typename StorageConfigurationT = StorageConfiguration>
369 bool m_associateDefaultSecurityGroup{
false};
375 bool m_useDedicatedReplicationServer{
false};
384 long long m_bandwidthThrottling{0};
388 bool m_createPublicIP{
false};
392 bool m_useFipsEndpoint{
false};
396 bool m_storeSnapshotOnLocalZone{
false};
398 StorageConfiguration m_storageConfiguration;
399 bool m_replicationConfigurationTemplateIDHasBeenSet =
false;
400 bool m_arnHasBeenSet =
false;
401 bool m_stagingAreaSubnetIdHasBeenSet =
false;
402 bool m_associateDefaultSecurityGroupHasBeenSet =
false;
403 bool m_replicationServersSecurityGroupsIDsHasBeenSet =
false;
404 bool m_replicationServerInstanceTypeHasBeenSet =
false;
405 bool m_useDedicatedReplicationServerHasBeenSet =
false;
406 bool m_defaultLargeStagingDiskTypeHasBeenSet =
false;
407 bool m_ebsEncryptionHasBeenSet =
false;
408 bool m_ebsEncryptionKeyArnHasBeenSet =
false;
409 bool m_bandwidthThrottlingHasBeenSet =
false;
410 bool m_dataPlaneRoutingHasBeenSet =
false;
411 bool m_createPublicIPHasBeenSet =
false;
412 bool m_stagingAreaTagsHasBeenSet =
false;
413 bool m_useFipsEndpointHasBeenSet =
false;
414 bool m_internetProtocolHasBeenSet =
false;
415 bool m_storeSnapshotOnLocalZoneHasBeenSet =
false;
416 bool m_storageConfigurationHasBeenSet =
false;
void SetEbsEncryptionKeyArn(EbsEncryptionKeyArnT &&value)
UpdateReplicationConfigurationTemplateRequest & WithAssociateDefaultSecurityGroup(bool value)
void SetReplicationServersSecurityGroupsIDs(ReplicationServersSecurityGroupsIDsT &&value)
bool GetCreatePublicIP() const
bool StorageConfigurationHasBeenSet() const
UpdateReplicationConfigurationTemplateRequest & WithDefaultLargeStagingDiskType(ReplicationConfigurationDefaultLargeStagingDiskType value)
bool StoreSnapshotOnLocalZoneHasBeenSet() const
const Aws::String & GetArn() const
bool UseFipsEndpointHasBeenSet() const
bool InternetProtocolHasBeenSet() const
bool GetUseFipsEndpoint() const
void SetStoreSnapshotOnLocalZone(bool value)
void SetDefaultLargeStagingDiskType(ReplicationConfigurationDefaultLargeStagingDiskType value)
UpdateReplicationConfigurationTemplateRequest & WithReplicationServersSecurityGroupsIDs(ReplicationServersSecurityGroupsIDsT &&value)
void SetStagingAreaTags(StagingAreaTagsT &&value)
UpdateReplicationConfigurationTemplateRequest & WithDataPlaneRouting(ReplicationConfigurationDataPlaneRouting value)
UpdateReplicationConfigurationTemplateRequest & WithReplicationServerInstanceType(ReplicationServerInstanceTypeT &&value)
bool CreatePublicIPHasBeenSet() const
long long GetBandwidthThrottling() const
bool GetAssociateDefaultSecurityGroup() const
const Aws::String & GetStagingAreaSubnetId() const
bool ReplicationServerInstanceTypeHasBeenSet() const
UpdateReplicationConfigurationTemplateRequest & WithUseFipsEndpoint(bool value)
ReplicationConfigurationEbsEncryption GetEbsEncryption() const
void SetDataPlaneRouting(ReplicationConfigurationDataPlaneRouting value)
bool EbsEncryptionKeyArnHasBeenSet() const
void SetUseFipsEndpoint(bool value)
void SetStorageConfiguration(StorageConfigurationT &&value)
const Aws::Map< Aws::String, Aws::String > & GetStagingAreaTags() const
UpdateReplicationConfigurationTemplateRequest & WithStagingAreaSubnetId(StagingAreaSubnetIdT &&value)
const Aws::String & GetEbsEncryptionKeyArn() const
const Aws::String & GetReplicationServerInstanceType() const
UpdateReplicationConfigurationTemplateRequest & WithReplicationConfigurationTemplateID(ReplicationConfigurationTemplateIDT &&value)
UpdateReplicationConfigurationTemplateRequest & WithBandwidthThrottling(long long value)
bool ReplicationServersSecurityGroupsIDsHasBeenSet() const
UpdateReplicationConfigurationTemplateRequest & AddReplicationServersSecurityGroupsIDs(ReplicationServersSecurityGroupsIDsT &&value)
UpdateReplicationConfigurationTemplateRequest & WithEbsEncryptionKeyArn(EbsEncryptionKeyArnT &&value)
bool BandwidthThrottlingHasBeenSet() const
UpdateReplicationConfigurationTemplateRequest & WithStagingAreaTags(StagingAreaTagsT &&value)
AWS_MGN_API UpdateReplicationConfigurationTemplateRequest()=default
bool StagingAreaTagsHasBeenSet() const
bool AssociateDefaultSecurityGroupHasBeenSet() const
bool GetUseDedicatedReplicationServer() const
bool DataPlaneRoutingHasBeenSet() const
bool EbsEncryptionHasBeenSet() const
UpdateReplicationConfigurationTemplateRequest & WithStoreSnapshotOnLocalZone(bool value)
UpdateReplicationConfigurationTemplateRequest & WithStorageConfiguration(StorageConfigurationT &&value)
void SetEbsEncryption(ReplicationConfigurationEbsEncryption value)
void SetCreatePublicIP(bool value)
UpdateReplicationConfigurationTemplateRequest & WithUseDedicatedReplicationServer(bool value)
ReplicationConfigurationDataPlaneRouting GetDataPlaneRouting() const
UpdateReplicationConfigurationTemplateRequest & WithInternetProtocol(InternetProtocol value)
bool UseDedicatedReplicationServerHasBeenSet() const
const Aws::String & GetReplicationConfigurationTemplateID() const
AWS_MGN_API Aws::String SerializePayload() const override
void SetInternetProtocol(InternetProtocol value)
bool ArnHasBeenSet() const
UpdateReplicationConfigurationTemplateRequest & WithEbsEncryption(ReplicationConfigurationEbsEncryption value)
const StorageConfiguration & GetStorageConfiguration() const
void SetUseDedicatedReplicationServer(bool value)
bool DefaultLargeStagingDiskTypeHasBeenSet() const
UpdateReplicationConfigurationTemplateRequest & AddStagingAreaTags(StagingAreaTagsKeyT &&key, StagingAreaTagsValueT &&value)
void SetStagingAreaSubnetId(StagingAreaSubnetIdT &&value)
void SetArn(ArnT &&value)
UpdateReplicationConfigurationTemplateRequest & WithCreatePublicIP(bool value)
virtual const char * GetServiceRequestName() const override
void SetAssociateDefaultSecurityGroup(bool value)
UpdateReplicationConfigurationTemplateRequest & WithArn(ArnT &&value)
void SetReplicationConfigurationTemplateID(ReplicationConfigurationTemplateIDT &&value)
ReplicationConfigurationDefaultLargeStagingDiskType GetDefaultLargeStagingDiskType() const
const Aws::Vector< Aws::String > & GetReplicationServersSecurityGroupsIDs() const
bool GetStoreSnapshotOnLocalZone() const
bool StagingAreaSubnetIdHasBeenSet() const
bool ReplicationConfigurationTemplateIDHasBeenSet() const
void SetReplicationServerInstanceType(ReplicationServerInstanceTypeT &&value)
void SetBandwidthThrottling(long long value)
InternetProtocol GetInternetProtocol() const
ReplicationConfigurationEbsEncryption
ReplicationConfigurationDataPlaneRouting
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