Class StartAutomationExecutionRequest

All Implemented Interfaces:
SdkPojo, ToCopyableBuilder<StartAutomationExecutionRequest.Builder,StartAutomationExecutionRequest>

@Generated("software.amazon.awssdk:codegen") public final class StartAutomationExecutionRequest extends SsmRequest implements ToCopyableBuilder<StartAutomationExecutionRequest.Builder,StartAutomationExecutionRequest>
  • Method Details

    • documentName

      public final String documentName()

      The name of the SSM document to run. This can be a public document or a custom document. To run a shared document belonging to another account, specify the document ARN. For more information about how to use shared documents, see Using shared SSM documents in the Amazon Web Services Systems Manager User Guide.

      Returns:
      The name of the SSM document to run. This can be a public document or a custom document. To run a shared document belonging to another account, specify the document ARN. For more information about how to use shared documents, see Using shared SSM documents in the Amazon Web Services Systems Manager User Guide.
    • documentVersion

      public final String documentVersion()

      The version of the Automation runbook to use for this execution.

      Returns:
      The version of the Automation runbook to use for this execution.
    • hasParameters

      public final boolean hasParameters()
      For responses, this returns true if the service returned a value for the Parameters property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
    • parameters

      public final Map<String,List<String>> parameters()

      A key-value map of execution parameters, which match the declared parameters in the Automation runbook.

      Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

      This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasParameters() method.

      Returns:
      A key-value map of execution parameters, which match the declared parameters in the Automation runbook.
    • clientToken

      public final String clientToken()

      User-provided idempotency token. The token must be unique, is case insensitive, enforces the UUID format, and can't be reused.

      Returns:
      User-provided idempotency token. The token must be unique, is case insensitive, enforces the UUID format, and can't be reused.
    • mode

      public final ExecutionMode mode()

      The execution mode of the automation. Valid modes include the following: Auto and Interactive. The default mode is Auto.

      If the service returns an enum value that is not available in the current SDK version, mode will return ExecutionMode.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from modeAsString().

      Returns:
      The execution mode of the automation. Valid modes include the following: Auto and Interactive. The default mode is Auto.
      See Also:
    • modeAsString

      public final String modeAsString()

      The execution mode of the automation. Valid modes include the following: Auto and Interactive. The default mode is Auto.

      If the service returns an enum value that is not available in the current SDK version, mode will return ExecutionMode.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from modeAsString().

      Returns:
      The execution mode of the automation. Valid modes include the following: Auto and Interactive. The default mode is Auto.
      See Also:
    • targetParameterName

      public final String targetParameterName()

      The name of the parameter used as the target resource for the rate-controlled execution. Required if you specify targets.

      Returns:
      The name of the parameter used as the target resource for the rate-controlled execution. Required if you specify targets.
    • hasTargets

      public final boolean hasTargets()
      For responses, this returns true if the service returned a value for the Targets property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
    • targets

      public final List<Target> targets()

      A key-value mapping to target resources. Required if you specify TargetParameterName.

      Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

      This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasTargets() method.

      Returns:
      A key-value mapping to target resources. Required if you specify TargetParameterName.
    • hasTargetMaps

      public final boolean hasTargetMaps()
      For responses, this returns true if the service returned a value for the TargetMaps property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
    • targetMaps

      public final List<Map<String,List<String>>> targetMaps()

      A key-value mapping of document parameters to target resources. Both Targets and TargetMaps can't be specified together.

      Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

      This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasTargetMaps() method.

      Returns:
      A key-value mapping of document parameters to target resources. Both Targets and TargetMaps can't be specified together.
    • maxConcurrency

      public final String maxConcurrency()

      The maximum number of targets allowed to run this task in parallel. You can specify a number, such as 10, or a percentage, such as 10%. The default value is 10.

      Returns:
      The maximum number of targets allowed to run this task in parallel. You can specify a number, such as 10, or a percentage, such as 10%. The default value is 10.
    • maxErrors

      public final String maxErrors()

      The number of errors that are allowed before the system stops running the automation on additional targets. You can specify either an absolute number of errors, for example 10, or a percentage of the target set, for example 10%. If you specify 3, for example, the system stops running the automation when the fourth error is received. If you specify 0, then the system stops running the automation on additional targets after the first error result is returned. If you run an automation on 50 resources and set max-errors to 10%, then the system stops running the automation on additional targets when the sixth error is received.

      Executions that are already running an automation when max-errors is reached are allowed to complete, but some of these executions may fail as well. If you need to ensure that there won't be more than max-errors failed executions, set max-concurrency to 1 so the executions proceed one at a time.

      Returns:
      The number of errors that are allowed before the system stops running the automation on additional targets. You can specify either an absolute number of errors, for example 10, or a percentage of the target set, for example 10%. If you specify 3, for example, the system stops running the automation when the fourth error is received. If you specify 0, then the system stops running the automation on additional targets after the first error result is returned. If you run an automation on 50 resources and set max-errors to 10%, then the system stops running the automation on additional targets when the sixth error is received.

      Executions that are already running an automation when max-errors is reached are allowed to complete, but some of these executions may fail as well. If you need to ensure that there won't be more than max-errors failed executions, set max-concurrency to 1 so the executions proceed one at a time.

    • hasTargetLocations

      public final boolean hasTargetLocations()
      For responses, this returns true if the service returned a value for the TargetLocations property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
    • targetLocations

      public final List<TargetLocation> targetLocations()

      A location is a combination of Amazon Web Services Regions and/or Amazon Web Services accounts where you want to run the automation. Use this operation to start an automation in multiple Amazon Web Services Regions and multiple Amazon Web Services accounts. For more information, see Running Automation workflows in multiple Amazon Web Services Regions and Amazon Web Services accounts in the Amazon Web Services Systems Manager User Guide.

      Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

      This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasTargetLocations() method.

      Returns:
      A location is a combination of Amazon Web Services Regions and/or Amazon Web Services accounts where you want to run the automation. Use this operation to start an automation in multiple Amazon Web Services Regions and multiple Amazon Web Services accounts. For more information, see Running Automation workflows in multiple Amazon Web Services Regions and Amazon Web Services accounts in the Amazon Web Services Systems Manager User Guide.
    • hasTags

      public final boolean hasTags()
      For responses, this returns true if the service returned a value for the Tags property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
    • tags

      public final List<Tag> tags()

      Optional metadata that you assign to a resource. You can specify a maximum of five tags for an automation. Tags enable you to categorize a resource in different ways, such as by purpose, owner, or environment. For example, you might want to tag an automation to identify an environment or operating system. In this case, you could specify the following key-value pairs:

      • Key=environment,Value=test

      • Key=OS,Value=Windows

      To add tags to an existing automation, use the AddTagsToResource operation.

      Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

      This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasTags() method.

      Returns:
      Optional metadata that you assign to a resource. You can specify a maximum of five tags for an automation. Tags enable you to categorize a resource in different ways, such as by purpose, owner, or environment. For example, you might want to tag an automation to identify an environment or operating system. In this case, you could specify the following key-value pairs:

      • Key=environment,Value=test

      • Key=OS,Value=Windows

      To add tags to an existing automation, use the AddTagsToResource operation.

    • alarmConfiguration

      public final AlarmConfiguration alarmConfiguration()

      The CloudWatch alarm you want to apply to your automation.

      Returns:
      The CloudWatch alarm you want to apply to your automation.
    • toBuilder

      Description copied from interface: ToCopyableBuilder
      Take this object and create a builder that contains all of the current property values of this object.
      Specified by:
      toBuilder in interface ToCopyableBuilder<StartAutomationExecutionRequest.Builder,StartAutomationExecutionRequest>
      Specified by:
      toBuilder in class SsmRequest
      Returns:
      a builder for type T
    • builder

      public static StartAutomationExecutionRequest.Builder builder()
    • serializableBuilderClass

      public static Class<? extends StartAutomationExecutionRequest.Builder> serializableBuilderClass()
    • hashCode

      public final int hashCode()
      Overrides:
      hashCode in class AwsRequest
    • equals

      public final boolean equals(Object obj)
      Overrides:
      equals in class AwsRequest
    • equalsBySdkFields

      public final boolean equalsBySdkFields(Object obj)
      Description copied from interface: SdkPojo
      Indicates whether some other object is "equal to" this one by SDK fields. An SDK field is a modeled, non-inherited field in an SdkPojo class, and is generated based on a service model.

      If an SdkPojo class does not have any inherited fields, equalsBySdkFields and equals are essentially the same.

      Specified by:
      equalsBySdkFields in interface SdkPojo
      Parameters:
      obj - the object to be compared with
      Returns:
      true if the other object equals to this object by sdk fields, false otherwise.
    • toString

      public final String toString()
      Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be redacted from this string using a placeholder value.
      Overrides:
      toString in class Object
    • getValueForField

      public final <T> Optional<T> getValueForField(String fieldName, Class<T> clazz)
      Description copied from class: SdkRequest
      Used to retrieve the value of a field from any class that extends SdkRequest. The field name specified should match the member name from the corresponding service-2.json model specified in the codegen-resources folder for a given service. The class specifies what class to cast the returned value to. If the returned value is also a modeled class, the SdkRequest.getValueForField(String, Class) method will again be available.
      Overrides:
      getValueForField in class SdkRequest
      Parameters:
      fieldName - The name of the member to be retrieved.
      clazz - The class to cast the returned object to.
      Returns:
      Optional containing the casted return value
    • sdkFields

      public final List<SdkField<?>> sdkFields()
      Specified by:
      sdkFields in interface SdkPojo
      Returns:
      List of SdkField in this POJO. May be empty list but should never be null.