updateLaunchConfigurationTemplate method

Future<LaunchConfigurationTemplate> updateLaunchConfigurationTemplate({
  1. required String launchConfigurationTemplateID,
  2. bool? associatePublicIpAddress,
  3. BootMode? bootMode,
  4. bool? copyPrivateIp,
  5. bool? copyTags,
  6. bool? enableMapAutoTagging,
  7. bool? enableParametersEncryption,
  8. LaunchTemplateDiskConf? largeVolumeConf,
  9. LaunchDisposition? launchDisposition,
  10. Licensing? licensing,
  11. String? mapAutoTaggingMpeID,
  12. String? parametersEncryptionKey,
  13. PostLaunchActions? postLaunchActions,
  14. LaunchTemplateDiskConf? smallVolumeConf,
  15. int? smallVolumeMaxSize,
  16. TargetInstanceTypeRightSizingMethod? targetInstanceTypeRightSizingMethod,
})

Updates an existing Launch Configuration Template by ID.

May throw AccessDeniedException. May throw ResourceNotFoundException. May throw UninitializedAccountException. May throw ValidationException.

Parameter launchConfigurationTemplateID : Launch Configuration Template ID.

Parameter associatePublicIpAddress : Associate public Ip address.

Parameter bootMode : Launch configuration template boot mode.

Parameter copyPrivateIp : Copy private Ip.

Parameter copyTags : Copy tags.

Parameter enableMapAutoTagging : Enable map auto tagging.

Parameter enableParametersEncryption : Enable parameters encryption.

Parameter largeVolumeConf : Large volume config.

Parameter launchDisposition : Launch disposition.

Parameter mapAutoTaggingMpeID : Launch configuration template map auto tagging MPE ID.

Parameter parametersEncryptionKey : Parameters encryption key.

Parameter postLaunchActions : Post Launch Action to execute on the Test or Cutover instance.

Parameter smallVolumeConf : Small volume config.

Parameter smallVolumeMaxSize : Small volume maximum size.

Parameter targetInstanceTypeRightSizingMethod : Target instance type right-sizing method.

Implementation

Future<LaunchConfigurationTemplate> updateLaunchConfigurationTemplate({
  required String launchConfigurationTemplateID,
  bool? associatePublicIpAddress,
  BootMode? bootMode,
  bool? copyPrivateIp,
  bool? copyTags,
  bool? enableMapAutoTagging,
  bool? enableParametersEncryption,
  LaunchTemplateDiskConf? largeVolumeConf,
  LaunchDisposition? launchDisposition,
  Licensing? licensing,
  String? mapAutoTaggingMpeID,
  String? parametersEncryptionKey,
  PostLaunchActions? postLaunchActions,
  LaunchTemplateDiskConf? smallVolumeConf,
  int? smallVolumeMaxSize,
  TargetInstanceTypeRightSizingMethod? targetInstanceTypeRightSizingMethod,
}) async {
  _s.validateNumRange(
    'smallVolumeMaxSize',
    smallVolumeMaxSize,
    0,
    1152921504606846976,
  );
  final $payload = <String, dynamic>{
    'launchConfigurationTemplateID': launchConfigurationTemplateID,
    if (associatePublicIpAddress != null)
      'associatePublicIpAddress': associatePublicIpAddress,
    if (bootMode != null) 'bootMode': bootMode.value,
    if (copyPrivateIp != null) 'copyPrivateIp': copyPrivateIp,
    if (copyTags != null) 'copyTags': copyTags,
    if (enableMapAutoTagging != null)
      'enableMapAutoTagging': enableMapAutoTagging,
    if (enableParametersEncryption != null)
      'enableParametersEncryption': enableParametersEncryption,
    if (largeVolumeConf != null) 'largeVolumeConf': largeVolumeConf,
    if (launchDisposition != null)
      'launchDisposition': launchDisposition.value,
    if (licensing != null) 'licensing': licensing,
    if (mapAutoTaggingMpeID != null)
      'mapAutoTaggingMpeID': mapAutoTaggingMpeID,
    if (parametersEncryptionKey != null)
      'parametersEncryptionKey': parametersEncryptionKey,
    if (postLaunchActions != null) 'postLaunchActions': postLaunchActions,
    if (smallVolumeConf != null) 'smallVolumeConf': smallVolumeConf,
    if (smallVolumeMaxSize != null) 'smallVolumeMaxSize': smallVolumeMaxSize,
    if (targetInstanceTypeRightSizingMethod != null)
      'targetInstanceTypeRightSizingMethod':
          targetInstanceTypeRightSizingMethod.value,
  };
  final response = await _protocol.send(
    payload: $payload,
    method: 'POST',
    requestUri: '/UpdateLaunchConfigurationTemplate',
    exceptionFnMap: _exceptionFns,
  );
  return LaunchConfigurationTemplate.fromJson(response);
}