7#include <aws/mgn/Mgn_EXPORTS.h>
8#include <aws/mgn/MgnRequest.h>
9#include <aws/mgn/model/ReplicationConfigurationDataPlaneRouting.h>
10#include <aws/mgn/model/ReplicationConfigurationDefaultLargeStagingDiskType.h>
11#include <aws/mgn/model/ReplicationConfigurationEbsEncryption.h>
12#include <aws/core/utils/memory/stl/AWSString.h>
13#include <aws/core/utils/memory/stl/AWSVector.h>
14#include <aws/core/utils/memory/stl/AWSMap.h>
35 inline virtual const char*
GetServiceRequestName()
const override {
return "CreateReplicationConfigurationTemplate"; }
58 inline void SetBandwidthThrottling(
long long value) { m_bandwidthThrottlingHasBeenSet =
true; m_bandwidthThrottling = value; }
69 inline void SetCreatePublicIP(
bool value) { m_createPublicIPHasBeenSet =
true; m_createPublicIP = value; }
113 template<
typename EbsEncryptionKeyArnT = Aws::String>
114 void SetEbsEncryptionKeyArn(EbsEncryptionKeyArnT&& value) { m_ebsEncryptionKeyArnHasBeenSet =
true; m_ebsEncryptionKeyArn = std::forward<EbsEncryptionKeyArnT>(value); }
115 template<
typename EbsEncryptionKeyArnT = Aws::String>
126 template<
typename ReplicationServerInstanceTypeT = Aws::String>
127 void SetReplicationServerInstanceType(ReplicationServerInstanceTypeT&& value) { m_replicationServerInstanceTypeHasBeenSet =
true; m_replicationServerInstanceType = std::forward<ReplicationServerInstanceTypeT>(value); }
128 template<
typename ReplicationServerInstanceTypeT = Aws::String>
139 template<
typename ReplicationServersSecurityGroupsIDsT = Aws::Vector<Aws::String>>
140 void SetReplicationServersSecurityGroupsIDs(ReplicationServersSecurityGroupsIDsT&& value) { m_replicationServersSecurityGroupsIDsHasBeenSet =
true; m_replicationServersSecurityGroupsIDs = std::forward<ReplicationServersSecurityGroupsIDsT>(value); }
141 template<
typename ReplicationServersSecurityGroupsIDsT = Aws::Vector<Aws::String>>
143 template<
typename ReplicationServersSecurityGroupsIDsT = Aws::String>
154 template<
typename StagingAreaSubnetIdT = Aws::String>
155 void SetStagingAreaSubnetId(StagingAreaSubnetIdT&& value) { m_stagingAreaSubnetIdHasBeenSet =
true; m_stagingAreaSubnetId = std::forward<StagingAreaSubnetIdT>(value); }
156 template<
typename StagingAreaSubnetIdT = Aws::String>
167 template<
typename StagingAreaTagsT = Aws::Map<Aws::String, Aws::String>>
168 void SetStagingAreaTags(StagingAreaTagsT&& value) { m_stagingAreaTagsHasBeenSet =
true; m_stagingAreaTags = std::forward<StagingAreaTagsT>(value); }
169 template<
typename StagingAreaTagsT = Aws::Map<Aws::String, Aws::String>>
171 template<
typename StagingAreaTagsKeyT = Aws::String,
typename StagingAreaTagsValueT = Aws::String>
173 m_stagingAreaTagsHasBeenSet =
true; m_stagingAreaTags.emplace(std::forward<StagingAreaTagsKeyT>(key), std::forward<StagingAreaTagsValueT>(value));
return *
this;
183 template<
typename TagsT = Aws::Map<Aws::String, Aws::String>>
184 void SetTags(TagsT&& value) { m_tagsHasBeenSet =
true; m_tags = std::forward<TagsT>(value); }
185 template<
typename TagsT = Aws::Map<Aws::String, Aws::String>>
187 template<
typename TagsKeyT = Aws::String,
typename TagsValueT = Aws::String>
189 m_tagsHasBeenSet =
true; m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
return *
this;
211 inline void SetUseFipsEndpoint(
bool value) { m_useFipsEndpointHasBeenSet =
true; m_useFipsEndpoint = value; }
216 bool m_associateDefaultSecurityGroup{
false};
217 bool m_associateDefaultSecurityGroupHasBeenSet =
false;
219 long long m_bandwidthThrottling{0};
220 bool m_bandwidthThrottlingHasBeenSet =
false;
222 bool m_createPublicIP{
false};
223 bool m_createPublicIPHasBeenSet =
false;
226 bool m_dataPlaneRoutingHasBeenSet =
false;
229 bool m_defaultLargeStagingDiskTypeHasBeenSet =
false;
232 bool m_ebsEncryptionHasBeenSet =
false;
235 bool m_ebsEncryptionKeyArnHasBeenSet =
false;
238 bool m_replicationServerInstanceTypeHasBeenSet =
false;
241 bool m_replicationServersSecurityGroupsIDsHasBeenSet =
false;
244 bool m_stagingAreaSubnetIdHasBeenSet =
false;
247 bool m_stagingAreaTagsHasBeenSet =
false;
250 bool m_tagsHasBeenSet =
false;
252 bool m_useDedicatedReplicationServer{
false};
253 bool m_useDedicatedReplicationServerHasBeenSet =
false;
255 bool m_useFipsEndpoint{
false};
256 bool m_useFipsEndpointHasBeenSet =
false;
CreateReplicationConfigurationTemplateRequest & WithDataPlaneRouting(ReplicationConfigurationDataPlaneRouting value)
void SetReplicationServersSecurityGroupsIDs(ReplicationServersSecurityGroupsIDsT &&value)
bool GetUseDedicatedReplicationServer() const
long long GetBandwidthThrottling() const
void SetDefaultLargeStagingDiskType(ReplicationConfigurationDefaultLargeStagingDiskType value)
bool StagingAreaSubnetIdHasBeenSet() const
const Aws::Vector< Aws::String > & GetReplicationServersSecurityGroupsIDs() const
void SetUseFipsEndpoint(bool value)
CreateReplicationConfigurationTemplateRequest & AddReplicationServersSecurityGroupsIDs(ReplicationServersSecurityGroupsIDsT &&value)
CreateReplicationConfigurationTemplateRequest & WithUseDedicatedReplicationServer(bool value)
ReplicationConfigurationDataPlaneRouting GetDataPlaneRouting() const
bool GetAssociateDefaultSecurityGroup() const
bool StagingAreaTagsHasBeenSet() const
bool ReplicationServerInstanceTypeHasBeenSet() const
bool AssociateDefaultSecurityGroupHasBeenSet() const
void SetBandwidthThrottling(long long value)
CreateReplicationConfigurationTemplateRequest & WithReplicationServersSecurityGroupsIDs(ReplicationServersSecurityGroupsIDsT &&value)
void SetAssociateDefaultSecurityGroup(bool value)
CreateReplicationConfigurationTemplateRequest & WithEbsEncryption(ReplicationConfigurationEbsEncryption value)
virtual const char * GetServiceRequestName() const override
CreateReplicationConfigurationTemplateRequest & WithTags(TagsT &&value)
CreateReplicationConfigurationTemplateRequest & WithAssociateDefaultSecurityGroup(bool value)
CreateReplicationConfigurationTemplateRequest & WithStagingAreaSubnetId(StagingAreaSubnetIdT &&value)
void SetReplicationServerInstanceType(ReplicationServerInstanceTypeT &&value)
void SetEbsEncryption(ReplicationConfigurationEbsEncryption value)
ReplicationConfigurationDefaultLargeStagingDiskType GetDefaultLargeStagingDiskType() const
CreateReplicationConfigurationTemplateRequest & WithStagingAreaTags(StagingAreaTagsT &&value)
CreateReplicationConfigurationTemplateRequest & WithEbsEncryptionKeyArn(EbsEncryptionKeyArnT &&value)
AWS_MGN_API CreateReplicationConfigurationTemplateRequest()=default
CreateReplicationConfigurationTemplateRequest & WithDefaultLargeStagingDiskType(ReplicationConfigurationDefaultLargeStagingDiskType value)
void SetCreatePublicIP(bool value)
ReplicationConfigurationEbsEncryption GetEbsEncryption() const
void SetUseDedicatedReplicationServer(bool value)
void SetEbsEncryptionKeyArn(EbsEncryptionKeyArnT &&value)
bool UseDedicatedReplicationServerHasBeenSet() const
CreateReplicationConfigurationTemplateRequest & AddTags(TagsKeyT &&key, TagsValueT &&value)
CreateReplicationConfigurationTemplateRequest & WithCreatePublicIP(bool value)
bool GetCreatePublicIP() const
bool UseFipsEndpointHasBeenSet() const
bool BandwidthThrottlingHasBeenSet() const
void SetDataPlaneRouting(ReplicationConfigurationDataPlaneRouting value)
bool ReplicationServersSecurityGroupsIDsHasBeenSet() const
bool DefaultLargeStagingDiskTypeHasBeenSet() const
const Aws::Map< Aws::String, Aws::String > & GetTags() const
const Aws::String & GetEbsEncryptionKeyArn() const
bool TagsHasBeenSet() const
const Aws::Map< Aws::String, Aws::String > & GetStagingAreaTags() const
const Aws::String & GetStagingAreaSubnetId() const
bool DataPlaneRoutingHasBeenSet() const
const Aws::String & GetReplicationServerInstanceType() const
void SetStagingAreaTags(StagingAreaTagsT &&value)
CreateReplicationConfigurationTemplateRequest & WithReplicationServerInstanceType(ReplicationServerInstanceTypeT &&value)
CreateReplicationConfigurationTemplateRequest & WithBandwidthThrottling(long long value)
AWS_MGN_API Aws::String SerializePayload() const override
bool CreatePublicIPHasBeenSet() const
void SetStagingAreaSubnetId(StagingAreaSubnetIdT &&value)
CreateReplicationConfigurationTemplateRequest & WithUseFipsEndpoint(bool value)
bool EbsEncryptionKeyArnHasBeenSet() const
bool EbsEncryptionHasBeenSet() const
CreateReplicationConfigurationTemplateRequest & AddStagingAreaTags(StagingAreaTagsKeyT &&key, StagingAreaTagsValueT &&value)
bool GetUseFipsEndpoint() const
void SetTags(TagsT &&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