Share via


OrchestrationMetadata Class

  • java.lang.Object
    • com.microsoft.durabletask.OrchestrationMetadata

public final class OrchestrationMetadata

Represents a snapshot of an orchestration instance's current state, including metadata.

Instances of this class are produced by methods in the DurableTaskClient class, such as DurableTaskClient#getInstanceMetadata, DurableTaskClient#waitForInstanceStart and DurableTaskClient#waitForInstanceCompletion

Method Summary

Modifier and Type Method and Description
T readCustomStatusAs(Class<T> type)

Deserializes the orchestration's custom status into an object of the specified type.

T readInputAs(Class<T> type)

Deserializes the orchestration's input into an object of the specified type.

T readOutputAs(Class<T> type)

Deserializes the orchestration's output into an object of the specified type.

java.time.Instant getCreatedAt()

Gets the orchestration instance's creation time in UTC.

FailureDetails getFailureDetails()

Gets the failure details, if any, for the failed orchestration instance.

java.lang.String getInstanceId()

Gets the unique ID of the orchestration instance.

java.time.Instant getLastUpdatedAt()

Gets the orchestration instance's last updated time in UTC.

java.lang.String getName()

Gets the name of the orchestration.

OrchestrationRuntimeStatus getRuntimeStatus()

Gets the current runtime status of the orchestration instance at the time this object was fetched.

java.lang.String getSerializedInput()

Gets the orchestration instance's serialized input, if any, as a string value.

java.lang.String getSerializedOutput()

Gets the orchestration instance's serialized output, if any, as a string value.

boolean isCompleted()

Gets a value indicating whether the orchestration instance was completed at the time this object was fetched.

boolean isCustomStatusFetched()

Returns true if the orchestration has a non-empty custom status value; otherwise false.

boolean isInstanceFound()

Returns true if an orchestration instance with this ID was found; otherwise false.

boolean isRunning()

Gets a value indicating whether the orchestration instance was running at the time this object was fetched.

java.lang.String toString()

Generates a user-friendly string representation of the current metadata object.

Methods inherited from java.lang.Object

java.lang.Object.clone java.lang.Object.equals java.lang.Object.finalize java.lang.Object.getClass java.lang.Object.hashCode java.lang.Object.notify java.lang.Object.notifyAll java.lang.Object.toString java.lang.Object.wait java.lang.Object.wait java.lang.Object.wait

Method Details

readCustomStatusAs

public T readCustomStatusAs(Class type)

Deserializes the orchestration's custom status into an object of the specified type.

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

Parameters:

type - the class associated with the type to deserialize the custom status data into

Returns:

the deserialized input value

readInputAs

public T readInputAs(Class type)

Deserializes the orchestration'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 orchestration metadata object.

Parameters:

type - the class associated with the type to deserialize the input data into

Returns:

the deserialized input value

readOutputAs

public T readOutputAs(Class type)

Deserializes the orchestration'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 orchestration metadata object.

Parameters:

type - the class associated with the type to deserialize the output data into

Returns:

the deserialized input value

getCreatedAt

public Instant getCreatedAt()

Gets the orchestration instance's creation time in UTC.

Returns:

the orchestration instance's creation time in UTC

getFailureDetails

public FailureDetails getFailureDetails()

Gets the failure details, if any, for the failed orchestration instance.

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

Returns:

the failure details of the failed orchestration instance or null

getInstanceId

public String getInstanceId()

Gets the unique ID of the orchestration instance.

Returns:

the unique ID of the orchestration instance

getLastUpdatedAt

public Instant getLastUpdatedAt()

Gets the orchestration instance's last updated time in UTC.

Returns:

the orchestration instance's last updated time in UTC

getName

public String getName()

Gets the name of the orchestration.

Returns:

the name of the orchestration

getRuntimeStatus

public OrchestrationRuntimeStatus getRuntimeStatus()

Gets the current runtime status of the orchestration instance at the time this object was fetched.

Returns:

the current runtime status of the orchestration instance at the time this object was fetched

getSerializedInput

public String getSerializedInput()

Gets the orchestration instance's serialized input, if any, as a string value.

Returns:

the orchestration instance's serialized input or null

getSerializedOutput

public String getSerializedOutput()

Gets the orchestration instance's serialized output, if any, as a string value.

Returns:

the orchestration instance's serialized output or null

isCompleted

public boolean isCompleted()

Gets a value indicating whether the orchestration instance was completed at the time this object was fetched.

An orchestration instance is considered completed when its runtime status value is COMPLETED, FAILED, or TERMINATED.

Returns:

true if the orchestration was in a terminal state; otherwise false

isCustomStatusFetched

public boolean isCustomStatusFetched()

Returns true if the orchestration has a non-empty custom status value; otherwise false.

This method will always return false if the metadata was fetched without the option to read inputs and outputs

Returns:

true if the orchestration has a non-empty custom status value; otherwise false

isInstanceFound

public boolean isInstanceFound()

Returns true if an orchestration instance with this ID was found; otherwise false.

Returns:

true if an orchestration instance with this ID was found; otherwise false

isRunning

public boolean isRunning()

Gets a value indicating whether the orchestration instance was running at the time this object was fetched.

Returns:

true if the orchestration existed and was in a running state; otherwise false

toString

public String toString()

Generates a user-friendly string representation of the current metadata object.

Overrides:

OrchestrationMetadata.toString()

Returns:

a user-friendly string representation of the current metadata object

Applies to