createPolicy method
Creates a resilience policy that defines availability and disaster recovery requirements.
May throw AccessDeniedException.
May throw ConflictException.
May throw InternalServerException.
May throw ResourceNotFoundException.
May throw ServiceQuotaExceededException.
May throw ValidationException.
Parameter availabilitySlo :
The availability SLO for the resilience policy.
Parameter dataRecovery :
The data recovery targets for the resilience policy.
Parameter multiAz :
The multi-AZ disaster recovery targets for the resilience policy.
Parameter multiRegion :
The multi-Region disaster recovery targets for the resilience policy.
Implementation
Future<CreatePolicyResponse> createPolicy({
required String name,
AvailabilitySlo? availabilitySlo,
String? clientToken,
DataRecoveryTargets? dataRecovery,
String? description,
String? kmsKeyId,
MultiAzTargets? multiAz,
MultiRegionTargets? multiRegion,
Map<String, String>? tags,
}) async {
final $payload = <String, dynamic>{
'name': name,
if (availabilitySlo != null) 'availabilitySlo': availabilitySlo,
'clientToken': clientToken ?? _s.generateIdempotencyToken(),
if (dataRecovery != null) 'dataRecovery': dataRecovery,
if (description != null) 'description': description,
if (kmsKeyId != null) 'kmsKeyId': kmsKeyId,
if (multiAz != null) 'multiAz': multiAz,
if (multiRegion != null) 'multiRegion': multiRegion,
if (tags != null) 'tags': tags,
};
final response = await _protocol.send(
payload: $payload,
method: 'POST',
requestUri: '/v2/create-policy',
exceptionFnMap: _exceptionFns,
);
return CreatePolicyResponse.fromJson(response);
}