Interface WorkflowInstanceStatus

All Known Implementing Classes:
DefaultWorkflowInstanceStatus

public interface WorkflowInstanceStatus
Represents a snapshot of a workflow instance's current state, including metadata.
  • Method Summary

    Modifier and Type
    Method
    Description
    Gets the workflow instance's creation time in UTC.
    Gets the failure details, if any, for the failed workflow instance.
    Gets the unique ID of the workflow instance.
    Gets the workflow instance's last updated time in UTC.
    Gets the name of the workflow.
    Gets the current runtime status of the workflow instance at the time this object was fetched.
    Gets the workflow instance's serialized input, if any, as a string value.
    Gets the workflow instance's serialized output, if any, as a string value.
    boolean
    Gets a value indicating whether the workflow instance was completed at the time this object was fetched.
    boolean
    Gets a value indicating whether the workflow instance was running at the time this object was fetched.
    <T> T
    readInputAs(Class<T> type)
    Deserializes the workflow's input into an object of the specified type.
    <T> T
    Deserializes the workflow's output into an object of the specified type.
  • Method Details

    • getName

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

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

      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

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

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

      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

      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 WorkflowFailureDetails getFailureDetails()
      Gets the failure details, if any, for the failed workflow instance.

      This method returns data only if the workflow is in the WorkflowFailureDetails failureDetails, 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

      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

      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

      <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

      <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