7#include <aws/core/http/HttpResponse.h>
8#include <aws/core/utils/memory/stl/AWSMap.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.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>
22template <
typename RESULT_TYPE>
23class AmazonWebServiceResult;
43 template <
typename SourceServerIDT = Aws::String>
45 m_sourceServerIDHasBeenSet =
true;
46 m_sourceServerID = std::forward<SourceServerIDT>(value);
48 template <
typename SourceServerIDT = Aws::String>
60 template <
typename NameT = Aws::String>
62 m_nameHasBeenSet =
true;
63 m_name = std::forward<NameT>(value);
65 template <
typename NameT = Aws::String>
67 SetName(std::forward<NameT>(value));
77 template <
typename StagingAreaSubnetIdT = Aws::String>
79 m_stagingAreaSubnetIdHasBeenSet =
true;
80 m_stagingAreaSubnetId = std::forward<StagingAreaSubnetIdT>(value);
82 template <
typename StagingAreaSubnetIdT = Aws::String>
96 m_associateDefaultSecurityGroupHasBeenSet =
true;
97 m_associateDefaultSecurityGroup = value;
110 template <
typename ReplicationServersSecurityGroupsIDsT = Aws::Vector<Aws::String>>
112 m_replicationServersSecurityGroupsIDsHasBeenSet =
true;
113 m_replicationServersSecurityGroupsIDs = std::forward<ReplicationServersSecurityGroupsIDsT>(value);
115 template <
typename ReplicationServersSecurityGroupsIDsT = Aws::Vector<Aws::String>>
120 template <
typename ReplicationServersSecurityGroupsIDsT = Aws::String>
122 m_replicationServersSecurityGroupsIDsHasBeenSet =
true;
123 m_replicationServersSecurityGroupsIDs.emplace_back(std::forward<ReplicationServersSecurityGroupsIDsT>(value));
133 template <
typename ReplicationServerInstanceTypeT = Aws::String>
135 m_replicationServerInstanceTypeHasBeenSet =
true;
136 m_replicationServerInstanceType = std::forward<ReplicationServerInstanceTypeT>(value);
138 template <
typename ReplicationServerInstanceTypeT = Aws::String>
151 m_useDedicatedReplicationServerHasBeenSet =
true;
152 m_useDedicatedReplicationServer = value;
165 return m_defaultLargeStagingDiskType;
168 m_defaultLargeStagingDiskTypeHasBeenSet =
true;
169 m_defaultLargeStagingDiskType = value;
182 template <
typename ReplicatedDisksT = Aws::Vector<ReplicationConfigurationReplicatedDisk>>
184 m_replicatedDisksHasBeenSet =
true;
185 m_replicatedDisks = std::forward<ReplicatedDisksT>(value);
187 template <
typename ReplicatedDisksT = Aws::Vector<ReplicationConfigurationReplicatedDisk>>
192 template <
typename ReplicatedDisksT = ReplicationConfigurationReplicatedDisk>
194 m_replicatedDisksHasBeenSet =
true;
195 m_replicatedDisks.emplace_back(std::forward<ReplicatedDisksT>(value));
206 m_ebsEncryptionHasBeenSet =
true;
207 m_ebsEncryption = value;
220 template <
typename EbsEncryptionKeyArnT = Aws::String>
222 m_ebsEncryptionKeyArnHasBeenSet =
true;
223 m_ebsEncryptionKeyArn = std::forward<EbsEncryptionKeyArnT>(value);
225 template <
typename EbsEncryptionKeyArnT = Aws::String>
238 m_bandwidthThrottlingHasBeenSet =
true;
239 m_bandwidthThrottling = value;
253 m_dataPlaneRoutingHasBeenSet =
true;
254 m_dataPlaneRouting = value;
268 m_createPublicIPHasBeenSet =
true;
269 m_createPublicIP = value;
282 template <
typename StagingAreaTagsT = Aws::Map<Aws::String, Aws::String>>
284 m_stagingAreaTagsHasBeenSet =
true;
285 m_stagingAreaTags = std::forward<StagingAreaTagsT>(value);
287 template <
typename StagingAreaTagsT = Aws::Map<Aws::String, Aws::String>>
292 template <
typename StagingAreaTagsKeyT = Aws::String,
typename StagingAreaTagsValueT = Aws::String>
294 m_stagingAreaTagsHasBeenSet =
true;
295 m_stagingAreaTags.emplace(std::forward<StagingAreaTagsKeyT>(key), std::forward<StagingAreaTagsValueT>(value));
306 m_useFipsEndpointHasBeenSet =
true;
307 m_useFipsEndpoint = value;
321 m_internetProtocolHasBeenSet =
true;
322 m_internetProtocol = value;
336 m_storeSnapshotOnLocalZoneHasBeenSet =
true;
337 m_storeSnapshotOnLocalZone = value;
350 template <
typename StorageConfigurationT = StorageConfiguration>
352 m_storageConfigurationHasBeenSet =
true;
353 m_storageConfiguration = std::forward<StorageConfigurationT>(value);
355 template <
typename StorageConfigurationT = StorageConfiguration>
365 template <
typename RequestIdT = Aws::String>
367 m_requestIdHasBeenSet =
true;
368 m_requestId = std::forward<RequestIdT>(value);
370 template <
typename RequestIdT = Aws::String>
385 bool m_associateDefaultSecurityGroup{
false};
391 bool m_useDedicatedReplicationServer{
false};
402 long long m_bandwidthThrottling{0};
406 bool m_createPublicIP{
false};
410 bool m_useFipsEndpoint{
false};
414 bool m_storeSnapshotOnLocalZone{
false};
416 StorageConfiguration m_storageConfiguration;
420 bool m_sourceServerIDHasBeenSet =
false;
421 bool m_nameHasBeenSet =
false;
422 bool m_stagingAreaSubnetIdHasBeenSet =
false;
423 bool m_associateDefaultSecurityGroupHasBeenSet =
false;
424 bool m_replicationServersSecurityGroupsIDsHasBeenSet =
false;
425 bool m_replicationServerInstanceTypeHasBeenSet =
false;
426 bool m_useDedicatedReplicationServerHasBeenSet =
false;
427 bool m_defaultLargeStagingDiskTypeHasBeenSet =
false;
428 bool m_replicatedDisksHasBeenSet =
false;
429 bool m_ebsEncryptionHasBeenSet =
false;
430 bool m_ebsEncryptionKeyArnHasBeenSet =
false;
431 bool m_bandwidthThrottlingHasBeenSet =
false;
432 bool m_dataPlaneRoutingHasBeenSet =
false;
433 bool m_createPublicIPHasBeenSet =
false;
434 bool m_stagingAreaTagsHasBeenSet =
false;
435 bool m_useFipsEndpointHasBeenSet =
false;
436 bool m_internetProtocolHasBeenSet =
false;
437 bool m_storeSnapshotOnLocalZoneHasBeenSet =
false;
438 bool m_storageConfigurationHasBeenSet =
false;
439 bool m_requestIdHasBeenSet =
false;
UpdateReplicationConfigurationResult & WithStorageConfiguration(StorageConfigurationT &&value)
bool GetStoreSnapshotOnLocalZone() const
UpdateReplicationConfigurationResult & WithAssociateDefaultSecurityGroup(bool value)
void SetUseFipsEndpoint(bool value)
void SetInternetProtocol(InternetProtocol value)
UpdateReplicationConfigurationResult & WithSourceServerID(SourceServerIDT &&value)
UpdateReplicationConfigurationResult & WithDataPlaneRouting(ReplicationConfigurationDataPlaneRouting value)
void SetReplicationServersSecurityGroupsIDs(ReplicationServersSecurityGroupsIDsT &&value)
const Aws::String & GetReplicationServerInstanceType() const
bool GetUseFipsEndpoint() const
void SetSourceServerID(SourceServerIDT &&value)
UpdateReplicationConfigurationResult & WithReplicatedDisks(ReplicatedDisksT &&value)
void SetStagingAreaSubnetId(StagingAreaSubnetIdT &&value)
ReplicationConfigurationDefaultLargeStagingDiskType GetDefaultLargeStagingDiskType() const
const Aws::Map< Aws::String, Aws::String > & GetStagingAreaTags() const
const Aws::String & GetStagingAreaSubnetId() const
void SetRequestId(RequestIdT &&value)
AWS_MGN_API UpdateReplicationConfigurationResult & operator=(const Aws::AmazonWebServiceResult< Aws::Utils::Json::JsonValue > &result)
bool GetCreatePublicIP() const
UpdateReplicationConfigurationResult & WithReplicationServerInstanceType(ReplicationServerInstanceTypeT &&value)
UpdateReplicationConfigurationResult & WithStagingAreaTags(StagingAreaTagsT &&value)
const Aws::String & GetEbsEncryptionKeyArn() const
void SetAssociateDefaultSecurityGroup(bool value)
const Aws::Vector< ReplicationConfigurationReplicatedDisk > & GetReplicatedDisks() const
void SetDataPlaneRouting(ReplicationConfigurationDataPlaneRouting value)
const StorageConfiguration & GetStorageConfiguration() const
UpdateReplicationConfigurationResult & WithStagingAreaSubnetId(StagingAreaSubnetIdT &&value)
void SetStorageConfiguration(StorageConfigurationT &&value)
ReplicationConfigurationEbsEncryption GetEbsEncryption() const
bool GetUseDedicatedReplicationServer() const
UpdateReplicationConfigurationResult & WithInternetProtocol(InternetProtocol value)
UpdateReplicationConfigurationResult & WithEbsEncryption(ReplicationConfigurationEbsEncryption value)
const Aws::String & GetName() const
UpdateReplicationConfigurationResult & WithBandwidthThrottling(long long value)
UpdateReplicationConfigurationResult & AddReplicationServersSecurityGroupsIDs(ReplicationServersSecurityGroupsIDsT &&value)
UpdateReplicationConfigurationResult & WithName(NameT &&value)
AWS_MGN_API UpdateReplicationConfigurationResult(const Aws::AmazonWebServiceResult< Aws::Utils::Json::JsonValue > &result)
void SetEbsEncryptionKeyArn(EbsEncryptionKeyArnT &&value)
bool GetAssociateDefaultSecurityGroup() const
void SetStagingAreaTags(StagingAreaTagsT &&value)
UpdateReplicationConfigurationResult & WithCreatePublicIP(bool value)
UpdateReplicationConfigurationResult & AddReplicatedDisks(ReplicatedDisksT &&value)
void SetCreatePublicIP(bool value)
UpdateReplicationConfigurationResult & WithUseFipsEndpoint(bool value)
ReplicationConfigurationDataPlaneRouting GetDataPlaneRouting() const
long long GetBandwidthThrottling() const
void SetEbsEncryption(ReplicationConfigurationEbsEncryption value)
UpdateReplicationConfigurationResult & WithUseDedicatedReplicationServer(bool value)
void SetReplicatedDisks(ReplicatedDisksT &&value)
void SetStoreSnapshotOnLocalZone(bool value)
AWS_MGN_API UpdateReplicationConfigurationResult()=default
void SetName(NameT &&value)
UpdateReplicationConfigurationResult & WithDefaultLargeStagingDiskType(ReplicationConfigurationDefaultLargeStagingDiskType value)
Aws::Http::HttpResponseCode GetHttpResponseCode() const
const Aws::String & GetSourceServerID() const
void SetBandwidthThrottling(long long value)
void SetReplicationServerInstanceType(ReplicationServerInstanceTypeT &&value)
UpdateReplicationConfigurationResult & WithReplicationServersSecurityGroupsIDs(ReplicationServersSecurityGroupsIDsT &&value)
void SetUseDedicatedReplicationServer(bool value)
UpdateReplicationConfigurationResult & WithRequestId(RequestIdT &&value)
UpdateReplicationConfigurationResult & WithEbsEncryptionKeyArn(EbsEncryptionKeyArnT &&value)
InternetProtocol GetInternetProtocol() const
void SetDefaultLargeStagingDiskType(ReplicationConfigurationDefaultLargeStagingDiskType value)
UpdateReplicationConfigurationResult & AddStagingAreaTags(StagingAreaTagsKeyT &&key, StagingAreaTagsValueT &&value)
const Aws::String & GetRequestId() const
UpdateReplicationConfigurationResult & WithStoreSnapshotOnLocalZone(bool value)
const Aws::Vector< Aws::String > & GetReplicationServersSecurityGroupsIDs() 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
Aws::Utils::Json::JsonValue JsonValue