Class StepConfig

java.lang.Object
software.amazon.awssdk.services.emr.model.StepConfig
All Implemented Interfaces:
Serializable, SdkPojo, ToCopyableBuilder<StepConfig.Builder,StepConfig>

@Generated("software.amazon.awssdk:codegen") public final class StepConfig extends Object implements SdkPojo, Serializable, ToCopyableBuilder<StepConfig.Builder,StepConfig>

Specification for a cluster (job flow) step.

See Also:
  • Method Details

    • name

      public final String name()

      The name of the step.

      Returns:
      The name of the step.
    • actionOnFailure

      public final ActionOnFailure actionOnFailure()

      The action to take when the step fails. Use one of the following values:

      • TERMINATE_CLUSTER - Shuts down the cluster.

      • CANCEL_AND_WAIT - Cancels any pending steps and returns the cluster to the WAITING state.

      • CONTINUE - Continues to the next step in the queue.

      • TERMINATE_JOB_FLOW - Shuts down the cluster. TERMINATE_JOB_FLOW is provided for backward compatibility. We recommend using TERMINATE_CLUSTER instead.

      If a cluster's StepConcurrencyLevel is greater than 1, do not use AddJobFlowSteps to submit a step with this parameter set to CANCEL_AND_WAIT or TERMINATE_CLUSTER. The step is not submitted and the action fails with a message that the ActionOnFailure setting is not valid.

      If you change a cluster's StepConcurrencyLevel to be greater than 1 while a step is running, the ActionOnFailure parameter may not behave as you expect. In this case, for a step that fails with this parameter set to CANCEL_AND_WAIT, pending steps and the running step are not canceled; for a step that fails with this parameter set to TERMINATE_CLUSTER, the cluster does not terminate.

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

      Returns:
      The action to take when the step fails. Use one of the following values:

      • TERMINATE_CLUSTER - Shuts down the cluster.

      • CANCEL_AND_WAIT - Cancels any pending steps and returns the cluster to the WAITING state.

      • CONTINUE - Continues to the next step in the queue.

      • TERMINATE_JOB_FLOW - Shuts down the cluster. TERMINATE_JOB_FLOW is provided for backward compatibility. We recommend using TERMINATE_CLUSTER instead.

      If a cluster's StepConcurrencyLevel is greater than 1, do not use AddJobFlowSteps to submit a step with this parameter set to CANCEL_AND_WAIT or TERMINATE_CLUSTER. The step is not submitted and the action fails with a message that the ActionOnFailure setting is not valid.

      If you change a cluster's StepConcurrencyLevel to be greater than 1 while a step is running, the ActionOnFailure parameter may not behave as you expect. In this case, for a step that fails with this parameter set to CANCEL_AND_WAIT, pending steps and the running step are not canceled; for a step that fails with this parameter set to TERMINATE_CLUSTER, the cluster does not terminate.

      See Also:
    • actionOnFailureAsString

      public final String actionOnFailureAsString()

      The action to take when the step fails. Use one of the following values:

      • TERMINATE_CLUSTER - Shuts down the cluster.

      • CANCEL_AND_WAIT - Cancels any pending steps and returns the cluster to the WAITING state.

      • CONTINUE - Continues to the next step in the queue.

      • TERMINATE_JOB_FLOW - Shuts down the cluster. TERMINATE_JOB_FLOW is provided for backward compatibility. We recommend using TERMINATE_CLUSTER instead.

      If a cluster's StepConcurrencyLevel is greater than 1, do not use AddJobFlowSteps to submit a step with this parameter set to CANCEL_AND_WAIT or TERMINATE_CLUSTER. The step is not submitted and the action fails with a message that the ActionOnFailure setting is not valid.

      If you change a cluster's StepConcurrencyLevel to be greater than 1 while a step is running, the ActionOnFailure parameter may not behave as you expect. In this case, for a step that fails with this parameter set to CANCEL_AND_WAIT, pending steps and the running step are not canceled; for a step that fails with this parameter set to TERMINATE_CLUSTER, the cluster does not terminate.

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

      Returns:
      The action to take when the step fails. Use one of the following values:

      • TERMINATE_CLUSTER - Shuts down the cluster.

      • CANCEL_AND_WAIT - Cancels any pending steps and returns the cluster to the WAITING state.

      • CONTINUE - Continues to the next step in the queue.

      • TERMINATE_JOB_FLOW - Shuts down the cluster. TERMINATE_JOB_FLOW is provided for backward compatibility. We recommend using TERMINATE_CLUSTER instead.

      If a cluster's StepConcurrencyLevel is greater than 1, do not use AddJobFlowSteps to submit a step with this parameter set to CANCEL_AND_WAIT or TERMINATE_CLUSTER. The step is not submitted and the action fails with a message that the ActionOnFailure setting is not valid.

      If you change a cluster's StepConcurrencyLevel to be greater than 1 while a step is running, the ActionOnFailure parameter may not behave as you expect. In this case, for a step that fails with this parameter set to CANCEL_AND_WAIT, pending steps and the running step are not canceled; for a step that fails with this parameter set to TERMINATE_CLUSTER, the cluster does not terminate.

      See Also:
    • hadoopJarStep

      public final HadoopJarStepConfig hadoopJarStep()

      The JAR file used for the step.

      Returns:
      The JAR file used for the step.
    • toBuilder

      public StepConfig.Builder 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<StepConfig.Builder,StepConfig>
      Returns:
      a builder for type T
    • builder

      public static StepConfig.Builder builder()
    • serializableBuilderClass

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

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

      public final boolean equals(Object obj)
      Overrides:
      equals in class Object
    • 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)
    • 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.