java.lang.Object
software.amazon.jsii.JsiiObject
software.constructs.Construct
software.amazon.awscdk.services.stepfunctions.State
software.amazon.awscdk.services.stepfunctions.Wait
All Implemented Interfaces:
IChainable, INextable, software.amazon.jsii.JsiiSerializable, software.constructs.IConstruct, software.constructs.IDependable

@Generated(value="jsii-pacmak/1.104.0 (build e79254c)", date="2024-11-06T23:25:17.598Z") @Stability(Stable) public class Wait extends State implements INextable
Define a Wait state in the state machine.

A Wait state can be used to delay execution of the state machine for a while.

Example:

 EvaluateExpression convertToSeconds = EvaluateExpression.Builder.create(this, "Convert to seconds")
         .expression("$.waitMilliseconds / 1000")
         .resultPath("$.waitSeconds")
         .build();
 EvaluateExpression createMessage = EvaluateExpression.Builder.create(this, "Create message")
         // Note: this is a string inside a string.
         .expression("`Now waiting ${$.waitSeconds} seconds...`")
         .runtime(Runtime.NODEJS_LATEST)
         .resultPath("$.message")
         .build();
 SnsPublish publishMessage = SnsPublish.Builder.create(this, "Publish message")
         .topic(new Topic(this, "cool-topic"))
         .message(TaskInput.fromJsonPathAt("$.message"))
         .resultPath("$.sns")
         .build();
 Wait wait = Wait.Builder.create(this, "Wait")
         .time(WaitTime.secondsPath("$.waitSeconds"))
         .build();
 StateMachine.Builder.create(this, "StateMachine")
         .definition(convertToSeconds.next(createMessage).next(publishMessage).next(wait))
         .build();
 
  • Constructor Details

    • Wait

      protected Wait(software.amazon.jsii.JsiiObjectRef objRef)
    • Wait

      protected Wait(software.amazon.jsii.JsiiObject.InitializationMode initializationMode)
    • Wait

      @Stability(Stable) public Wait(@NotNull software.constructs.Construct scope, @NotNull String id, @NotNull WaitProps props)
      Parameters:
      scope - This parameter is required.
      id - Descriptive identifier for this chainable. This parameter is required.
      props - This parameter is required.
  • Method Details

    • next

      @Stability(Stable) @NotNull public Chain next(@NotNull IChainable next)
      Continue normal execution with the given state.

      Specified by:
      next in interface INextable
      Parameters:
      next - This parameter is required.
      Returns:
      The chain of states built up
    • toStateJson

      @Stability(Stable) @NotNull public com.fasterxml.jackson.databind.node.ObjectNode toStateJson()
      Return the Amazon States Language object for this state.
      Specified by:
      toStateJson in class State
    • getEndStates

      @Stability(Stable) @NotNull public List<INextable> getEndStates()
      Continuable states of this Chainable.
      Specified by:
      getEndStates in interface IChainable
      Specified by:
      getEndStates in class State