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/ReplicationConfigurationReplicatedDisk.h>
17#include <aws/mgn/model/StorageConfiguration.h>
45 template <
typename SourceServerIDT = Aws::String>
47 m_sourceServerIDHasBeenSet =
true;
48 m_sourceServerID = std::forward<SourceServerIDT>(value);
50 template <
typename SourceServerIDT = Aws::String>
63 template <
typename NameT = Aws::String>
65 m_nameHasBeenSet =
true;
66 m_name = std::forward<NameT>(value);
68 template <
typename NameT = Aws::String>
70 SetName(std::forward<NameT>(value));
81 template <
typename StagingAreaSubnetIdT = Aws::String>
83 m_stagingAreaSubnetIdHasBeenSet =
true;
84 m_stagingAreaSubnetId = std::forward<StagingAreaSubnetIdT>(value);
86 template <
typename StagingAreaSubnetIdT = Aws::String>
101 m_associateDefaultSecurityGroupHasBeenSet =
true;
102 m_associateDefaultSecurityGroup = value;
117 template <
typename ReplicationServersSecurityGroupsIDsT = Aws::Vector<Aws::String>>
119 m_replicationServersSecurityGroupsIDsHasBeenSet =
true;
120 m_replicationServersSecurityGroupsIDs = std::forward<ReplicationServersSecurityGroupsIDsT>(value);
122 template <
typename ReplicationServersSecurityGroupsIDsT = Aws::Vector<Aws::String>>
127 template <
typename ReplicationServersSecurityGroupsIDsT = Aws::String>
129 m_replicationServersSecurityGroupsIDsHasBeenSet =
true;
130 m_replicationServersSecurityGroupsIDs.emplace_back(std::forward<ReplicationServersSecurityGroupsIDsT>(value));
142 template <
typename ReplicationServerInstanceTypeT = Aws::String>
144 m_replicationServerInstanceTypeHasBeenSet =
true;
145 m_replicationServerInstanceType = std::forward<ReplicationServerInstanceTypeT>(value);
147 template <
typename ReplicationServerInstanceTypeT = Aws::String>
162 m_useDedicatedReplicationServerHasBeenSet =
true;
163 m_useDedicatedReplicationServer = value;
177 return m_defaultLargeStagingDiskType;
181 m_defaultLargeStagingDiskTypeHasBeenSet =
true;
182 m_defaultLargeStagingDiskType = value;
196 template <
typename ReplicatedDisksT = Aws::Vector<ReplicationConfigurationReplicatedDisk>>
198 m_replicatedDisksHasBeenSet =
true;
199 m_replicatedDisks = std::forward<ReplicatedDisksT>(value);
201 template <
typename ReplicatedDisksT = Aws::Vector<ReplicationConfigurationReplicatedDisk>>
206 template <
typename ReplicatedDisksT = ReplicationConfigurationReplicatedDisk>
208 m_replicatedDisksHasBeenSet =
true;
209 m_replicatedDisks.emplace_back(std::forward<ReplicatedDisksT>(value));
221 m_ebsEncryptionHasBeenSet =
true;
222 m_ebsEncryption = value;
236 template <
typename EbsEncryptionKeyArnT = Aws::String>
238 m_ebsEncryptionKeyArnHasBeenSet =
true;
239 m_ebsEncryptionKeyArn = std::forward<EbsEncryptionKeyArnT>(value);
241 template <
typename EbsEncryptionKeyArnT = Aws::String>
255 m_bandwidthThrottlingHasBeenSet =
true;
256 m_bandwidthThrottling = value;
271 m_dataPlaneRoutingHasBeenSet =
true;
272 m_dataPlaneRouting = value;
287 m_createPublicIPHasBeenSet =
true;
288 m_createPublicIP = value;
302 template <
typename StagingAreaTagsT = Aws::Map<Aws::String, Aws::String>>
304 m_stagingAreaTagsHasBeenSet =
true;
305 m_stagingAreaTags = std::forward<StagingAreaTagsT>(value);
307 template <
typename StagingAreaTagsT = Aws::Map<Aws::String, Aws::String>>
312 template <
typename StagingAreaTagsKeyT = Aws::String,
typename StagingAreaTagsValueT = Aws::String>
314 m_stagingAreaTagsHasBeenSet =
true;
315 m_stagingAreaTags.emplace(std::forward<StagingAreaTagsKeyT>(key), std::forward<StagingAreaTagsValueT>(value));
327 m_useFipsEndpointHasBeenSet =
true;
328 m_useFipsEndpoint = value;
342 template <
typename AccountIDT = Aws::String>
344 m_accountIDHasBeenSet =
true;
345 m_accountID = std::forward<AccountIDT>(value);
347 template <
typename AccountIDT = Aws::String>
361 m_internetProtocolHasBeenSet =
true;
362 m_internetProtocol = value;
377 m_storeSnapshotOnLocalZoneHasBeenSet =
true;
378 m_storeSnapshotOnLocalZone = value;
392 template <
typename StorageConfigurationT = StorageConfiguration>
394 m_storageConfigurationHasBeenSet =
true;
395 m_storageConfiguration = std::forward<StorageConfigurationT>(value);
397 template <
typename StorageConfigurationT = StorageConfiguration>
410 bool m_associateDefaultSecurityGroup{
false};
416 bool m_useDedicatedReplicationServer{
false};
427 long long m_bandwidthThrottling{0};
431 bool m_createPublicIP{
false};
435 bool m_useFipsEndpoint{
false};
441 bool m_storeSnapshotOnLocalZone{
false};
443 StorageConfiguration m_storageConfiguration;
444 bool m_sourceServerIDHasBeenSet =
false;
445 bool m_nameHasBeenSet =
false;
446 bool m_stagingAreaSubnetIdHasBeenSet =
false;
447 bool m_associateDefaultSecurityGroupHasBeenSet =
false;
448 bool m_replicationServersSecurityGroupsIDsHasBeenSet =
false;
449 bool m_replicationServerInstanceTypeHasBeenSet =
false;
450 bool m_useDedicatedReplicationServerHasBeenSet =
false;
451 bool m_defaultLargeStagingDiskTypeHasBeenSet =
false;
452 bool m_replicatedDisksHasBeenSet =
false;
453 bool m_ebsEncryptionHasBeenSet =
false;
454 bool m_ebsEncryptionKeyArnHasBeenSet =
false;
455 bool m_bandwidthThrottlingHasBeenSet =
false;
456 bool m_dataPlaneRoutingHasBeenSet =
false;
457 bool m_createPublicIPHasBeenSet =
false;
458 bool m_stagingAreaTagsHasBeenSet =
false;
459 bool m_useFipsEndpointHasBeenSet =
false;
460 bool m_accountIDHasBeenSet =
false;
461 bool m_internetProtocolHasBeenSet =
false;
462 bool m_storeSnapshotOnLocalZoneHasBeenSet =
false;
463 bool m_storageConfigurationHasBeenSet =
false;
ReplicationConfigurationEbsEncryption GetEbsEncryption() const
bool InternetProtocolHasBeenSet() const
const Aws::String & GetReplicationServerInstanceType() const
bool StoreSnapshotOnLocalZoneHasBeenSet() const
AWS_MGN_API Aws::String SerializePayload() const override
const Aws::String & GetSourceServerID() const
UpdateReplicationConfigurationRequest & WithBandwidthThrottling(long long value)
const Aws::String & GetEbsEncryptionKeyArn() const
UpdateReplicationConfigurationRequest & WithStorageConfiguration(StorageConfigurationT &&value)
bool ReplicationServersSecurityGroupsIDsHasBeenSet() const
bool GetAssociateDefaultSecurityGroup() const
bool GetCreatePublicIP() const
UpdateReplicationConfigurationRequest & WithDataPlaneRouting(ReplicationConfigurationDataPlaneRouting value)
void SetReplicatedDisks(ReplicatedDisksT &&value)
AWS_MGN_API UpdateReplicationConfigurationRequest()=default
UpdateReplicationConfigurationRequest & WithReplicationServersSecurityGroupsIDs(ReplicationServersSecurityGroupsIDsT &&value)
void SetDataPlaneRouting(ReplicationConfigurationDataPlaneRouting value)
UpdateReplicationConfigurationRequest & WithStagingAreaTags(StagingAreaTagsT &&value)
const Aws::String & GetAccountID() const
void SetEbsEncryptionKeyArn(EbsEncryptionKeyArnT &&value)
bool StagingAreaSubnetIdHasBeenSet() const
bool DataPlaneRoutingHasBeenSet() const
UpdateReplicationConfigurationRequest & AddReplicatedDisks(ReplicatedDisksT &&value)
UpdateReplicationConfigurationRequest & WithSourceServerID(SourceServerIDT &&value)
bool AssociateDefaultSecurityGroupHasBeenSet() const
ReplicationConfigurationDataPlaneRouting GetDataPlaneRouting() const
void SetStagingAreaSubnetId(StagingAreaSubnetIdT &&value)
bool DefaultLargeStagingDiskTypeHasBeenSet() const
bool ReplicationServerInstanceTypeHasBeenSet() const
UpdateReplicationConfigurationRequest & WithStoreSnapshotOnLocalZone(bool value)
bool CreatePublicIPHasBeenSet() const
bool NameHasBeenSet() const
bool UseFipsEndpointHasBeenSet() const
void SetUseFipsEndpoint(bool value)
UpdateReplicationConfigurationRequest & WithAccountID(AccountIDT &&value)
UpdateReplicationConfigurationRequest & WithDefaultLargeStagingDiskType(ReplicationConfigurationDefaultLargeStagingDiskType value)
ReplicationConfigurationDefaultLargeStagingDiskType GetDefaultLargeStagingDiskType() const
UpdateReplicationConfigurationRequest & WithReplicatedDisks(ReplicatedDisksT &&value)
void SetAccountID(AccountIDT &&value)
void SetReplicationServerInstanceType(ReplicationServerInstanceTypeT &&value)
long long GetBandwidthThrottling() const
bool EbsEncryptionHasBeenSet() const
UpdateReplicationConfigurationRequest & WithUseDedicatedReplicationServer(bool value)
void SetBandwidthThrottling(long long value)
UpdateReplicationConfigurationRequest & WithReplicationServerInstanceType(ReplicationServerInstanceTypeT &&value)
void SetUseDedicatedReplicationServer(bool value)
bool EbsEncryptionKeyArnHasBeenSet() const
void SetInternetProtocol(InternetProtocol value)
bool GetUseDedicatedReplicationServer() const
UpdateReplicationConfigurationRequest & WithEbsEncryptionKeyArn(EbsEncryptionKeyArnT &&value)
void SetAssociateDefaultSecurityGroup(bool value)
virtual const char * GetServiceRequestName() const override
void SetReplicationServersSecurityGroupsIDs(ReplicationServersSecurityGroupsIDsT &&value)
const Aws::String & GetStagingAreaSubnetId() const
bool UseDedicatedReplicationServerHasBeenSet() const
void SetStorageConfiguration(StorageConfigurationT &&value)
bool SourceServerIDHasBeenSet() const
void SetSourceServerID(SourceServerIDT &&value)
UpdateReplicationConfigurationRequest & AddStagingAreaTags(StagingAreaTagsKeyT &&key, StagingAreaTagsValueT &&value)
UpdateReplicationConfigurationRequest & WithName(NameT &&value)
bool ReplicatedDisksHasBeenSet() const
UpdateReplicationConfigurationRequest & WithCreatePublicIP(bool value)
void SetName(NameT &&value)
InternetProtocol GetInternetProtocol() const
UpdateReplicationConfigurationRequest & WithEbsEncryption(ReplicationConfigurationEbsEncryption value)
bool AccountIDHasBeenSet() const
const Aws::Map< Aws::String, Aws::String > & GetStagingAreaTags() const
UpdateReplicationConfigurationRequest & WithUseFipsEndpoint(bool value)
void SetCreatePublicIP(bool value)
const StorageConfiguration & GetStorageConfiguration() const
const Aws::Vector< ReplicationConfigurationReplicatedDisk > & GetReplicatedDisks() const
bool StorageConfigurationHasBeenSet() const
void SetDefaultLargeStagingDiskType(ReplicationConfigurationDefaultLargeStagingDiskType value)
bool GetStoreSnapshotOnLocalZone() const
void SetStagingAreaTags(StagingAreaTagsT &&value)
void SetStoreSnapshotOnLocalZone(bool value)
UpdateReplicationConfigurationRequest & WithStagingAreaSubnetId(StagingAreaSubnetIdT &&value)
UpdateReplicationConfigurationRequest & WithAssociateDefaultSecurityGroup(bool value)
void SetEbsEncryption(ReplicationConfigurationEbsEncryption value)
bool StagingAreaTagsHasBeenSet() const
const Aws::String & GetName() const
UpdateReplicationConfigurationRequest & AddReplicationServersSecurityGroupsIDs(ReplicationServersSecurityGroupsIDsT &&value)
bool GetUseFipsEndpoint() const
const Aws::Vector< Aws::String > & GetReplicationServersSecurityGroupsIDs() const
bool BandwidthThrottlingHasBeenSet() const
UpdateReplicationConfigurationRequest & WithInternetProtocol(InternetProtocol value)
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