putTemplateAction method

Future<TemplateActionDocument> putTemplateAction({
  1. required String actionID,
  2. required String actionName,
  3. required String documentIdentifier,
  4. required String launchConfigurationTemplateID,
  5. required int order,
  6. bool? active,
  7. ActionCategory? category,
  8. String? description,
  9. String? documentVersion,
  10. Map<String, SsmExternalParameter>? externalParameters,
  11. bool? mustSucceedForCutover,
  12. String? operatingSystem,
  13. Map<String, List<SsmParameterStoreParameter>>? parameters,
  14. int? timeoutSeconds,
})

Put template post migration custom action.

May throw ConflictException. May throw ResourceNotFoundException. May throw UninitializedAccountException. May throw ValidationException.

Parameter actionID : Template post migration custom action ID.

Parameter actionName : Template post migration custom action name.

Parameter documentIdentifier : Template post migration custom action document identifier.

Parameter launchConfigurationTemplateID : Launch configuration template ID.

Parameter order : Template post migration custom action order.

Parameter active : Template post migration custom action active status.

Parameter category : Template post migration custom action category.

Parameter description : Template post migration custom action description.

Parameter documentVersion : Template post migration custom action document version.

Parameter externalParameters : Template post migration custom action external parameters.

Parameter mustSucceedForCutover : Template post migration custom action must succeed for cutover.

Parameter operatingSystem : Operating system eligible for this template post migration custom action.

Parameter parameters : Template post migration custom action parameters.

Parameter timeoutSeconds : Template post migration custom action timeout in seconds.

Implementation

Future<TemplateActionDocument> putTemplateAction({
  required String actionID,
  required String actionName,
  required String documentIdentifier,
  required String launchConfigurationTemplateID,
  required int order,
  bool? active,
  ActionCategory? category,
  String? description,
  String? documentVersion,
  Map<String, SsmExternalParameter>? externalParameters,
  bool? mustSucceedForCutover,
  String? operatingSystem,
  Map<String, List<SsmParameterStoreParameter>>? parameters,
  int? timeoutSeconds,
}) async {
  _s.validateNumRange(
    'order',
    order,
    1001,
    10000,
    isRequired: true,
  );
  _s.validateNumRange(
    'timeoutSeconds',
    timeoutSeconds,
    1,
    1152921504606846976,
  );
  final $payload = <String, dynamic>{
    'actionID': actionID,
    'actionName': actionName,
    'documentIdentifier': documentIdentifier,
    'launchConfigurationTemplateID': launchConfigurationTemplateID,
    'order': order,
    if (active != null) 'active': active,
    if (category != null) 'category': category.value,
    if (description != null) 'description': description,
    if (documentVersion != null) 'documentVersion': documentVersion,
    if (externalParameters != null) 'externalParameters': externalParameters,
    if (mustSucceedForCutover != null)
      'mustSucceedForCutover': mustSucceedForCutover,
    if (operatingSystem != null) 'operatingSystem': operatingSystem,
    if (parameters != null) 'parameters': parameters,
    if (timeoutSeconds != null) 'timeoutSeconds': timeoutSeconds,
  };
  final response = await _protocol.send(
    payload: $payload,
    method: 'POST',
    requestUri: '/PutTemplateAction',
    exceptionFnMap: _exceptionFns,
  );
  return TemplateActionDocument.fromJson(response);
}