Class WorkflowInstanceStatus

java.lang.Object
io.dapr.workflows.client.WorkflowInstanceStatus

public class WorkflowInstanceStatus extends Object
Represents a snapshot of a workflow instance's current state, including metadata.
  • Constructor Details

    • WorkflowInstanceStatus

      public WorkflowInstanceStatus(com.microsoft.durabletask.OrchestrationMetadata orchestrationMetadata)
      Class constructor.
      Parameters:
      orchestrationMetadata - Durable task orchestration metadata
  • Method Details

    • getName

      public String getName()
      Gets the name of the workflow.
      Returns:
      the name of the workflow
    • getInstanceId

      public String getInstanceId()
      Gets the unique ID of the workflow instance.
      Returns:
      the unique ID of the workflow instance
    • getRuntimeStatus

      public WorkflowRuntimeStatus getRuntimeStatus()
      Gets the current runtime status of the workflow instance at the time this object was fetched.
      Returns:
      the current runtime status of the workflow instance at the time this object was fetched
    • getCreatedAt

      public Instant getCreatedAt()
      Gets the workflow instance's creation time in UTC.
      Returns:
      the workflow instance's creation time in UTC
    • getLastUpdatedAt

      public Instant getLastUpdatedAt()
      Gets the workflow instance's last updated time in UTC.
      Returns:
      the workflow instance's last updated time in UTC
    • getSerializedInput

      public String getSerializedInput()
      Gets the workflow instance's serialized input, if any, as a string value.
      Returns:
      the workflow instance's serialized input or null
    • getSerializedOutput

      public String getSerializedOutput()
      Gets the workflow instance's serialized output, if any, as a string value.
      Returns:
      the workflow instance's serialized output or null
    • getFailureDetails

      @Nullable public WorkflowFailureDetails getFailureDetails()
      Gets the failure details, if any, for the failed workflow instance.

      This method returns data only if the workflow is in the OrchestrationRuntimeStatus.FAILED state, and only if this instance metadata was fetched with the option to include output data.

      Returns:
      the failure details of the failed workflow instance or null
    • isRunning

      public boolean isRunning()
      Gets a value indicating whether the workflow instance was running at the time this object was fetched.
      Returns:
      true if the workflow existed and was in a running state otherwise false
    • isCompleted

      public boolean isCompleted()
      Gets a value indicating whether the workflow instance was completed at the time this object was fetched.

      A workflow instance is considered completed when its runtime status value is WorkflowRuntimeStatus.COMPLETED, WorkflowRuntimeStatus.FAILED, or WorkflowRuntimeStatus.TERMINATED.

      Returns:
      true if the workflow was in a terminal state; otherwise false
    • readInputAs

      public <T> T readInputAs(Class<T> type)
      Deserializes the workflow's input into an object of the specified type.

      Deserialization is performed using the DataConverter that was configured on the DurableTaskClient object that created this workflow metadata object.

      Type Parameters:
      T - the type to deserialize the input data into
      Parameters:
      type - the class associated with the type to deserialize the input data into
      Returns:
      the deserialized input value
      Throws:
      IllegalStateException - if the metadata was fetched without the option to read inputs and outputs
    • readOutputAs

      public <T> T readOutputAs(Class<T> type)
      Deserializes the workflow's output into an object of the specified type.

      Deserialization is performed using the DataConverter that was configured on the DurableTaskClient object that created this workflow metadata object.

      Type Parameters:
      T - the type to deserialize the output data into
      Parameters:
      type - the class associated with the type to deserialize the output data into
      Returns:
      the deserialized input value
      Throws:
      IllegalStateException - if the metadata was fetched without the option to read inputs and outputs
    • toString

      public String toString()
      Generates a user-friendly string representation of the current metadata object.
      Overrides:
      toString in class Object
      Returns:
      a user-friendly string representation of the current metadata object