createReplicationConfigurationTemplate method
- required bool associateDefaultSecurityGroup,
- required int bandwidthThrottling,
- required bool createPublicIP,
- required ReplicationConfigurationDataPlaneRouting dataPlaneRouting,
- required ReplicationConfigurationDefaultLargeStagingDiskType defaultLargeStagingDiskType,
- required ReplicationConfigurationEbsEncryption ebsEncryption,
- required String replicationServerInstanceType,
- required List<
String> replicationServersSecurityGroupsIDs, - required String stagingAreaSubnetId,
- required Map<
String, String> stagingAreaTags, - required bool useDedicatedReplicationServer,
- String? ebsEncryptionKeyArn,
- InternetProtocol? internetProtocol,
- bool? storeSnapshotOnLocalZone,
- Map<
String, String> ? tags, - bool? useFipsEndpoint,
Creates a new ReplicationConfigurationTemplate.
May throw AccessDeniedException.
May throw UninitializedAccountException.
May throw ValidationException.
Parameter associateDefaultSecurityGroup :
Request to associate the default Application Migration Service Security
group with the Replication Settings template.
Parameter bandwidthThrottling :
Request to configure bandwidth throttling during Replication Settings
template creation.
Parameter createPublicIP :
Request to create Public IP during Replication Settings template creation.
Parameter dataPlaneRouting :
Request to configure data plane routing during Replication Settings
template creation.
Parameter defaultLargeStagingDiskType :
Request to configure the default large staging disk EBS volume type during
Replication Settings template creation.
Parameter ebsEncryption :
Request to configure EBS encryption during Replication Settings template
creation.
Parameter replicationServerInstanceType :
Request to configure the Replication Server instance type during
Replication Settings template creation.
Parameter replicationServersSecurityGroupsIDs :
Request to configure the Replication Server Security group ID during
Replication Settings template creation.
Parameter stagingAreaSubnetId :
Request to configure the Staging Area subnet ID during Replication
Settings template creation.
Parameter stagingAreaTags :
Request to configure Staging Area tags during Replication Settings
template creation.
Parameter useDedicatedReplicationServer :
Request to use Dedicated Replication Servers during Replication Settings
template creation.
Parameter ebsEncryptionKeyArn :
Request to configure an EBS encryption key during Replication Settings
template creation.
Parameter internetProtocol :
Request to configure the internet protocol to IPv4 or IPv6.
Parameter storeSnapshotOnLocalZone :
Request to store snapshot on local zone during Replication Settings
template creation.
Parameter tags :
Request to configure tags during Replication Settings template creation.
Parameter useFipsEndpoint :
Request to use Fips Endpoint during Replication Settings template
creation.
Implementation
Future<ReplicationConfigurationTemplate>
createReplicationConfigurationTemplate({
required bool associateDefaultSecurityGroup,
required int bandwidthThrottling,
required bool createPublicIP,
required ReplicationConfigurationDataPlaneRouting dataPlaneRouting,
required ReplicationConfigurationDefaultLargeStagingDiskType
defaultLargeStagingDiskType,
required ReplicationConfigurationEbsEncryption ebsEncryption,
required String replicationServerInstanceType,
required List<String> replicationServersSecurityGroupsIDs,
required String stagingAreaSubnetId,
required Map<String, String> stagingAreaTags,
required bool useDedicatedReplicationServer,
String? ebsEncryptionKeyArn,
InternetProtocol? internetProtocol,
bool? storeSnapshotOnLocalZone,
Map<String, String>? tags,
bool? useFipsEndpoint,
}) async {
_s.validateNumRange(
'bandwidthThrottling',
bandwidthThrottling,
0,
10000,
isRequired: true,
);
final $payload = <String, dynamic>{
'associateDefaultSecurityGroup': associateDefaultSecurityGroup,
'bandwidthThrottling': bandwidthThrottling,
'createPublicIP': createPublicIP,
'dataPlaneRouting': dataPlaneRouting.value,
'defaultLargeStagingDiskType': defaultLargeStagingDiskType.value,
'ebsEncryption': ebsEncryption.value,
'replicationServerInstanceType': replicationServerInstanceType,
'replicationServersSecurityGroupsIDs':
replicationServersSecurityGroupsIDs,
'stagingAreaSubnetId': stagingAreaSubnetId,
'stagingAreaTags': stagingAreaTags,
'useDedicatedReplicationServer': useDedicatedReplicationServer,
if (ebsEncryptionKeyArn != null)
'ebsEncryptionKeyArn': ebsEncryptionKeyArn,
if (internetProtocol != null) 'internetProtocol': internetProtocol.value,
if (storeSnapshotOnLocalZone != null)
'storeSnapshotOnLocalZone': storeSnapshotOnLocalZone,
if (tags != null) 'tags': tags,
if (useFipsEndpoint != null) 'useFipsEndpoint': useFipsEndpoint,
};
final response = await _protocol.send(
payload: $payload,
method: 'POST',
requestUri: '/CreateReplicationConfigurationTemplate',
exceptionFnMap: _exceptionFns,
);
return ReplicationConfigurationTemplate.fromJson(response);
}