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/Mgn_EXPORTS.h>
11#include <aws/mgn/model/InternetProtocol.h>
12#include <aws/mgn/model/ReplicationConfigurationDataPlaneRouting.h>
13#include <aws/mgn/model/ReplicationConfigurationDefaultLargeStagingDiskType.h>
14#include <aws/mgn/model/ReplicationConfigurationEbsEncryption.h>
15#include <aws/mgn/model/ReplicationConfigurationReplicatedDisk.h>
20template <
typename RESULT_TYPE>
21class AmazonWebServiceResult;
41 template <
typename SourceServerIDT = Aws::String>
43 m_sourceServerIDHasBeenSet =
true;
44 m_sourceServerID = std::forward<SourceServerIDT>(value);
46 template <
typename SourceServerIDT = Aws::String>
58 template <
typename NameT = Aws::String>
60 m_nameHasBeenSet =
true;
61 m_name = std::forward<NameT>(value);
63 template <
typename NameT = Aws::String>
65 SetName(std::forward<NameT>(value));
75 template <
typename StagingAreaSubnetIdT = Aws::String>
77 m_stagingAreaSubnetIdHasBeenSet =
true;
78 m_stagingAreaSubnetId = std::forward<StagingAreaSubnetIdT>(value);
80 template <
typename StagingAreaSubnetIdT = Aws::String>
94 m_associateDefaultSecurityGroupHasBeenSet =
true;
95 m_associateDefaultSecurityGroup = value;
108 template <
typename ReplicationServersSecurityGroupsIDsT = Aws::Vector<Aws::String>>
110 m_replicationServersSecurityGroupsIDsHasBeenSet =
true;
111 m_replicationServersSecurityGroupsIDs = std::forward<ReplicationServersSecurityGroupsIDsT>(value);
113 template <
typename ReplicationServersSecurityGroupsIDsT = Aws::Vector<Aws::String>>
118 template <
typename ReplicationServersSecurityGroupsIDsT = Aws::String>
120 m_replicationServersSecurityGroupsIDsHasBeenSet =
true;
121 m_replicationServersSecurityGroupsIDs.emplace_back(std::forward<ReplicationServersSecurityGroupsIDsT>(value));
131 template <
typename ReplicationServerInstanceTypeT = Aws::String>
133 m_replicationServerInstanceTypeHasBeenSet =
true;
134 m_replicationServerInstanceType = std::forward<ReplicationServerInstanceTypeT>(value);
136 template <
typename ReplicationServerInstanceTypeT = Aws::String>
149 m_useDedicatedReplicationServerHasBeenSet =
true;
150 m_useDedicatedReplicationServer = value;
163 return m_defaultLargeStagingDiskType;
166 m_defaultLargeStagingDiskTypeHasBeenSet =
true;
167 m_defaultLargeStagingDiskType = value;
180 template <
typename ReplicatedDisksT = Aws::Vector<ReplicationConfigurationReplicatedDisk>>
182 m_replicatedDisksHasBeenSet =
true;
183 m_replicatedDisks = std::forward<ReplicatedDisksT>(value);
185 template <
typename ReplicatedDisksT = Aws::Vector<ReplicationConfigurationReplicatedDisk>>
190 template <
typename ReplicatedDisksT = ReplicationConfigurationReplicatedDisk>
192 m_replicatedDisksHasBeenSet =
true;
193 m_replicatedDisks.emplace_back(std::forward<ReplicatedDisksT>(value));
204 m_ebsEncryptionHasBeenSet =
true;
205 m_ebsEncryption = value;
218 template <
typename EbsEncryptionKeyArnT = Aws::String>
220 m_ebsEncryptionKeyArnHasBeenSet =
true;
221 m_ebsEncryptionKeyArn = std::forward<EbsEncryptionKeyArnT>(value);
223 template <
typename EbsEncryptionKeyArnT = Aws::String>
236 m_bandwidthThrottlingHasBeenSet =
true;
237 m_bandwidthThrottling = value;
251 m_dataPlaneRoutingHasBeenSet =
true;
252 m_dataPlaneRouting = value;
266 m_createPublicIPHasBeenSet =
true;
267 m_createPublicIP = value;
280 template <
typename StagingAreaTagsT = Aws::Map<Aws::String, Aws::String>>
282 m_stagingAreaTagsHasBeenSet =
true;
283 m_stagingAreaTags = std::forward<StagingAreaTagsT>(value);
285 template <
typename StagingAreaTagsT = Aws::Map<Aws::String, Aws::String>>
290 template <
typename StagingAreaTagsKeyT = Aws::String,
typename StagingAreaTagsValueT = Aws::String>
292 m_stagingAreaTagsHasBeenSet =
true;
293 m_stagingAreaTags.emplace(std::forward<StagingAreaTagsKeyT>(key), std::forward<StagingAreaTagsValueT>(value));
304 m_useFipsEndpointHasBeenSet =
true;
305 m_useFipsEndpoint = value;
319 m_internetProtocolHasBeenSet =
true;
320 m_internetProtocol = value;
331 template <
typename RequestIdT = Aws::String>
333 m_requestIdHasBeenSet =
true;
334 m_requestId = std::forward<RequestIdT>(value);
336 template <
typename RequestIdT = Aws::String>
349 bool m_associateDefaultSecurityGroup{
false};
355 bool m_useDedicatedReplicationServer{
false};
366 long long m_bandwidthThrottling{0};
370 bool m_createPublicIP{
false};
374 bool m_useFipsEndpoint{
false};
379 bool m_sourceServerIDHasBeenSet =
false;
380 bool m_nameHasBeenSet =
false;
381 bool m_stagingAreaSubnetIdHasBeenSet =
false;
382 bool m_associateDefaultSecurityGroupHasBeenSet =
false;
383 bool m_replicationServersSecurityGroupsIDsHasBeenSet =
false;
384 bool m_replicationServerInstanceTypeHasBeenSet =
false;
385 bool m_useDedicatedReplicationServerHasBeenSet =
false;
386 bool m_defaultLargeStagingDiskTypeHasBeenSet =
false;
387 bool m_replicatedDisksHasBeenSet =
false;
388 bool m_ebsEncryptionHasBeenSet =
false;
389 bool m_ebsEncryptionKeyArnHasBeenSet =
false;
390 bool m_bandwidthThrottlingHasBeenSet =
false;
391 bool m_dataPlaneRoutingHasBeenSet =
false;
392 bool m_createPublicIPHasBeenSet =
false;
393 bool m_stagingAreaTagsHasBeenSet =
false;
394 bool m_useFipsEndpointHasBeenSet =
false;
395 bool m_internetProtocolHasBeenSet =
false;
396 bool m_requestIdHasBeenSet =
false;
void SetStagingAreaTags(StagingAreaTagsT &&value)
GetReplicationConfigurationResult & WithStagingAreaSubnetId(StagingAreaSubnetIdT &&value)
const Aws::String & GetStagingAreaSubnetId() const
AWS_MGN_API GetReplicationConfigurationResult()=default
const Aws::Vector< Aws::String > & GetReplicationServersSecurityGroupsIDs() const
bool GetAssociateDefaultSecurityGroup() const
GetReplicationConfigurationResult & WithName(NameT &&value)
ReplicationConfigurationEbsEncryption GetEbsEncryption() const
const Aws::String & GetRequestId() const
GetReplicationConfigurationResult & WithBandwidthThrottling(long long value)
void SetUseDedicatedReplicationServer(bool value)
GetReplicationConfigurationResult & WithCreatePublicIP(bool value)
void SetName(NameT &&value)
void SetBandwidthThrottling(long long value)
ReplicationConfigurationDefaultLargeStagingDiskType GetDefaultLargeStagingDiskType() const
GetReplicationConfigurationResult & AddReplicationServersSecurityGroupsIDs(ReplicationServersSecurityGroupsIDsT &&value)
GetReplicationConfigurationResult & WithRequestId(RequestIdT &&value)
void SetRequestId(RequestIdT &&value)
GetReplicationConfigurationResult & WithReplicationServersSecurityGroupsIDs(ReplicationServersSecurityGroupsIDsT &&value)
GetReplicationConfigurationResult & WithAssociateDefaultSecurityGroup(bool value)
const Aws::String & GetEbsEncryptionKeyArn() const
void SetSourceServerID(SourceServerIDT &&value)
AWS_MGN_API GetReplicationConfigurationResult & operator=(const Aws::AmazonWebServiceResult< Aws::Utils::Json::JsonValue > &result)
GetReplicationConfigurationResult & AddStagingAreaTags(StagingAreaTagsKeyT &&key, StagingAreaTagsValueT &&value)
InternetProtocol GetInternetProtocol() const
void SetAssociateDefaultSecurityGroup(bool value)
GetReplicationConfigurationResult & WithDataPlaneRouting(ReplicationConfigurationDataPlaneRouting value)
bool GetCreatePublicIP() const
GetReplicationConfigurationResult & WithInternetProtocol(InternetProtocol value)
const Aws::String & GetReplicationServerInstanceType() const
void SetEbsEncryption(ReplicationConfigurationEbsEncryption value)
void SetReplicatedDisks(ReplicatedDisksT &&value)
ReplicationConfigurationDataPlaneRouting GetDataPlaneRouting() const
void SetInternetProtocol(InternetProtocol value)
AWS_MGN_API GetReplicationConfigurationResult(const Aws::AmazonWebServiceResult< Aws::Utils::Json::JsonValue > &result)
GetReplicationConfigurationResult & AddReplicatedDisks(ReplicatedDisksT &&value)
GetReplicationConfigurationResult & WithUseFipsEndpoint(bool value)
void SetEbsEncryptionKeyArn(EbsEncryptionKeyArnT &&value)
void SetDataPlaneRouting(ReplicationConfigurationDataPlaneRouting value)
GetReplicationConfigurationResult & WithEbsEncryptionKeyArn(EbsEncryptionKeyArnT &&value)
GetReplicationConfigurationResult & WithSourceServerID(SourceServerIDT &&value)
void SetDefaultLargeStagingDiskType(ReplicationConfigurationDefaultLargeStagingDiskType value)
GetReplicationConfigurationResult & WithReplicationServerInstanceType(ReplicationServerInstanceTypeT &&value)
void SetReplicationServersSecurityGroupsIDs(ReplicationServersSecurityGroupsIDsT &&value)
const Aws::Map< Aws::String, Aws::String > & GetStagingAreaTags() const
long long GetBandwidthThrottling() const
bool GetUseDedicatedReplicationServer() const
GetReplicationConfigurationResult & WithUseDedicatedReplicationServer(bool value)
const Aws::String & GetSourceServerID() const
const Aws::String & GetName() const
void SetReplicationServerInstanceType(ReplicationServerInstanceTypeT &&value)
bool GetUseFipsEndpoint() const
GetReplicationConfigurationResult & WithStagingAreaTags(StagingAreaTagsT &&value)
void SetCreatePublicIP(bool value)
GetReplicationConfigurationResult & WithReplicatedDisks(ReplicatedDisksT &&value)
GetReplicationConfigurationResult & WithEbsEncryption(ReplicationConfigurationEbsEncryption value)
const Aws::Vector< ReplicationConfigurationReplicatedDisk > & GetReplicatedDisks() const
void SetStagingAreaSubnetId(StagingAreaSubnetIdT &&value)
GetReplicationConfigurationResult & WithDefaultLargeStagingDiskType(ReplicationConfigurationDefaultLargeStagingDiskType value)
void SetUseFipsEndpoint(bool 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
Aws::Utils::Json::JsonValue JsonValue