Package io.temporal.workflow
Interface WorkflowInfo
-
public interface WorkflowInfoProvides information about the current Workflow Execution and Run. Also provides access to immutable information about connected entities like Parent Workflow Execution or a previous Run.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Deprecated Methods Modifier and Type Method Description intgetAttempt()java.util.Optional<java.lang.String>getContinuedExecutionRunId()java.lang.StringgetCronSchedule()java.util.Optional<java.lang.String>getCurrentBuildId()java.lang.StringgetFirstExecutionRunId()longgetHistoryLength()longgetHistorySize()java.lang.StringgetNamespace()java.lang.StringgetOriginalExecutionRunId()Note: This value is NOT preserved by continue-as-new, retries or cron Runs.java.util.Optional<java.lang.String>getParentRunId()java.util.Optional<java.lang.String>getParentWorkflowId()PrioritygetPriority()Return the priority of the workflow task.RetryOptionsgetRetryOptions()java.util.Optional<java.lang.String>getRootRunId()java.util.Optional<java.lang.String>getRootWorkflowId()java.lang.StringgetRunId()Note: RunId is unique identifier of one workflow code execution.longgetRunStartedTimestampMillis()The time workflow run has started.io.temporal.api.common.v1.SearchAttributesgetSearchAttributes()Deprecated.useWorkflow.getTypedSearchAttributes()instead.java.util.List<SuggestContinueAsNewReason>getSuggestContinueAsNewReasons()java.lang.StringgetTaskQueue()java.time.DurationgetWorkflowExecutionTimeout()java.lang.StringgetWorkflowId()java.time.DurationgetWorkflowRunTimeout()java.lang.StringgetWorkflowType()booleanisContinueAsNewSuggested()booleanisTargetWorkerDeploymentVersionChanged()
-
-
-
Method Detail
-
getNamespace
java.lang.String getNamespace()
- Returns:
- Workflow Namespace
-
getWorkflowId
java.lang.String getWorkflowId()
- Returns:
- Workflow ID
-
getWorkflowType
java.lang.String getWorkflowType()
- Returns:
- Workflow Type
-
getRunId
@Nonnull java.lang.String getRunId()
Note: RunId is unique identifier of one workflow code execution. Reset changes RunId.- Returns:
- Workflow Run ID that is handled by the current workflow code execution.
- See Also:
for RunId variation that is resistant to Resets,for the very first RunId that is preserved along the whole Workflow Execution chain, including ContinueAsNew, Retry, Cron and Reset.
-
getFirstExecutionRunId
@Nonnull java.lang.String getFirstExecutionRunId()
- Returns:
- The very first original RunId of the current Workflow Execution preserved along the chain of ContinueAsNew, Retry, Cron and Reset. Identifies the whole Runs chain of Workflow Execution.
-
getContinuedExecutionRunId
java.util.Optional<java.lang.String> getContinuedExecutionRunId()
- Returns:
- Run ID of the previous Workflow Run which continued-as-new or retried or cron-scheduled into the current Workflow Run.
-
getOriginalExecutionRunId
@Nonnull java.lang.String getOriginalExecutionRunId()
Note: This value is NOT preserved by continue-as-new, retries or cron Runs. They are separate Runs of one Workflow Execution Chain.- Returns:
- original RunId of the current Workflow Run. This value is preserved during Reset which changes RunID.
- See Also:
for the very first RunId that is preserved along the whole Workflow Execution chain, including ContinueAsNew, Retry, Cron and Reset.
-
getTaskQueue
java.lang.String getTaskQueue()
- Returns:
- Workflow Task Queue name
-
getRetryOptions
@Nullable RetryOptions getRetryOptions()
-
getWorkflowRunTimeout
java.time.Duration getWorkflowRunTimeout()
- Returns:
- Timeout for a Workflow Run specified during Workflow start in
WorkflowOptions.Builder.setWorkflowRunTimeout(Duration)
-
getWorkflowExecutionTimeout
java.time.Duration getWorkflowExecutionTimeout()
- Returns:
- Timeout for the Workflow Execution specified during Workflow start in
WorkflowOptions.Builder.setWorkflowExecutionTimeout(Duration)
-
getRunStartedTimestampMillis
long getRunStartedTimestampMillis()
The time workflow run has started. Note that this time can be different from the time workflow function started actual execution.
-
getSearchAttributes
@Deprecated @Nullable io.temporal.api.common.v1.SearchAttributes getSearchAttributes()
Deprecated.useWorkflow.getTypedSearchAttributes()instead.This method is used to get raw proto serialized Search Attributes.Consider using more user-friendly methods on
Workflowclass, includingWorkflow.getSearchAttributes(),Workflow.getSearchAttribute(String)orWorkflow.getSearchAttributeValues(String)instead of this method to access deserialized search attributes.- Returns:
- raw Search Attributes Protobuf entity, null if empty
-
getParentWorkflowId
java.util.Optional<java.lang.String> getParentWorkflowId()
- Returns:
- Workflow ID of the parent Workflow
-
getParentRunId
java.util.Optional<java.lang.String> getParentRunId()
- Returns:
- Run ID of the parent Workflow
-
getRootWorkflowId
java.util.Optional<java.lang.String> getRootWorkflowId()
- Returns:
- Workflow ID of the root Workflow
-
getRootRunId
java.util.Optional<java.lang.String> getRootRunId()
- Returns:
- Run ID of the root Workflow
-
getAttempt
int getAttempt()
- Returns:
- Workflow retry attempt handled by this Workflow code execution. Starts on "1".
-
getCronSchedule
java.lang.String getCronSchedule()
- Returns:
- Workflow cron schedule
-
getHistoryLength
long getHistoryLength()
- Returns:
- length of Workflow history up until the current moment of execution. This value changes
during the lifetime of a Workflow Execution. You may use this information to decide when to
call
Workflow.continueAsNew(Object...).
-
getHistorySize
long getHistorySize()
- Returns:
- size of Workflow history in bytes up until the current moment of execution. This value changes during the lifetime of a Workflow Execution.
-
isContinueAsNewSuggested
boolean isContinueAsNewSuggested()
- Returns:
- true if the server is configured to suggest continue as new and it is suggested. This value changes during the lifetime of a Workflow Execution.
-
getSuggestContinueAsNewReasons
@Experimental java.util.List<SuggestContinueAsNewReason> getSuggestContinueAsNewReasons()
- Returns:
- the reasons why continue-as-new is suggested, or an empty list if not suggested. This value changes during the lifetime of a Workflow Execution.
-
isTargetWorkerDeploymentVersionChanged
@Experimental boolean isTargetWorkerDeploymentVersionChanged()
- Returns:
- true if the target worker deployment version has changed for this workflow since the
last workflow task. This is only relevant for workflows using the PINNED versioning
behavior. When true, the workflow may want to continue-as-new with
ContinueAsNewOptions.Builder.setInitialVersioningBehavior(io.temporal.common.InitialVersioningBehavior)set to AUTO_UPGRADE.
-
getCurrentBuildId
java.util.Optional<java.lang.String> getCurrentBuildId()
- Returns:
- The Build ID of the worker which executed the current Workflow Task. May be empty the task was completed by a worker without a Build ID. If this worker is the one executing this task for the first time and has a Build ID set, then its ID will be used. This value may change over the lifetime of the workflow run, but is deterministic and safe to use for branching.
-
getPriority
@Experimental @Nonnull Priority getPriority()
Return the priority of the workflow task.
-
-