From 8b138da07a4f92b7cd3fa6321f2214f7162c5449 Mon Sep 17 00:00:00 2001 From: salaboy Date: Wed, 4 Dec 2024 19:29:48 +0000 Subject: [PATCH] replacing subWorkflow to childWorkflow to align with other SDKs (#1168) Signed-off-by: salaboy --- docs/dapr-sdk-workflows/index-all.html | 42 ++--- .../workflows/DaprWorkflowContextImpl.html | 44 ++--- .../io/dapr/workflows/WorkflowContext.html | 162 +++++++++--------- .../dapr-sdk-workflows/member-search-index.js | 2 +- docs/index-all.html | 28 +-- .../workflows/DaprWorkflowContextImpl.html | 32 ++-- docs/io/dapr/workflows/WorkflowContext.html | 162 +++++++++--------- .../java/io/dapr/examples/workflows/README.md | 62 +++---- .../DemoChildWorkerflowClient.java} | 6 +- .../DemoChildWorkflow.java} | 16 +- .../DemoChildWorkflowWorker.java} | 6 +- .../DemoWorkflow.java | 14 +- .../ReverseActivity.java | 2 +- .../workflows/DaprWorkflowContextImpl.java | 2 +- .../io/dapr/workflows/WorkflowContext.java | 114 ++++++------ .../DaprWorkflowContextImplTest.java | 14 +- 16 files changed, 354 insertions(+), 354 deletions(-) rename examples/src/main/java/io/dapr/examples/workflows/{subworkflow/DemoSubWorkerflowClient.java => childworkflow/DemoChildWorkerflowClient.java} (88%) rename examples/src/main/java/io/dapr/examples/workflows/{subworkflow/DemoSubWorkflow.java => childworkflow/DemoChildWorkflow.java} (60%) rename examples/src/main/java/io/dapr/examples/workflows/{subworkflow/DemoSubWorkflowWorker.java => childworkflow/DemoChildWorkflowWorker.java} (90%) rename examples/src/main/java/io/dapr/examples/workflows/{subworkflow => childworkflow}/DemoWorkflow.java (65%) rename examples/src/main/java/io/dapr/examples/workflows/{subworkflow => childworkflow}/ReverseActivity.java (96%) diff --git a/docs/dapr-sdk-workflows/index-all.html b/docs/dapr-sdk-workflows/index-all.html index a696db2af..6c2c10cd7 100644 --- a/docs/dapr-sdk-workflows/index-all.html +++ b/docs/dapr-sdk-workflows/index-all.html @@ -138,40 +138,40 @@

C

that completes when the activity completes.If the activity completes successfully, the returned Task's value will be the activity's output. -
callSubWorkflow(String) - Method in interface io.dapr.workflows.WorkflowContext
+
callChildWorkflow(String) - Method in interface io.dapr.workflows.WorkflowContext
-
Asynchronously invokes another workflow as a sub-workflow and returns a Task that completes - when the sub-workflow completes.
+
Asynchronously invokes another workflow as a child-workflow and returns a Task that completes + when the child-workflow completes.
-
callSubWorkflow(String, Object) - Method in interface io.dapr.workflows.WorkflowContext
+
callChildWorkflow(String, Object) - Method in interface io.dapr.workflows.WorkflowContext
-
Asynchronously invokes another workflow as a sub-workflow and returns a Task that completes - when the sub-workflow completes.
+
Asynchronously invokes another workflow as a child-workflow and returns a Task that completes + when the child-workflow completes.
-
callSubWorkflow(String, Object, Class<V>) - Method in interface io.dapr.workflows.WorkflowContext
+
callChildWorkflow(String, Object, Class<V>) - Method in interface io.dapr.workflows.WorkflowContext
-
Asynchronously invokes another workflow as a sub-workflow and returns a Task that completes - when the sub-workflow completes.
+
Asynchronously invokes another workflow as a child-workflow and returns a Task that completes + when the child-workflow completes.
-
callSubWorkflow(String, Object, String, TaskOptions) - Method in interface io.dapr.workflows.WorkflowContext
+
callChildWorkflow(String, Object, String, TaskOptions) - Method in interface io.dapr.workflows.WorkflowContext
-
Asynchronously invokes another workflow as a sub-workflow and returns a Task that completes - when the sub-workflow completes.
+
Asynchronously invokes another workflow as a child-workflow and returns a Task that completes + when the child-workflow completes.
-
callSubWorkflow(String, Object, String, TaskOptions, Class<V>) - Method in class io.dapr.workflows.DaprWorkflowContextImpl
+
callChildWorkflow(String, Object, String, TaskOptions, Class<V>) - Method in class io.dapr.workflows.DaprWorkflowContextImpl
-
Asynchronously invokes another workflow as a sub-workflow and returns a Task that completes - when the sub-workflow completes.
+
Asynchronously invokes another workflow as a child-workflow and returns a Task that completes + when the child-workflow completes.
-
callSubWorkflow(String, Object, String, TaskOptions, Class<V>) - Method in interface io.dapr.workflows.WorkflowContext
+
callChildWorkflow(String, Object, String, TaskOptions, Class<V>) - Method in interface io.dapr.workflows.WorkflowContext
-
Asynchronously invokes another workflow as a sub-workflow and returns a Task that completes - when the sub-workflow completes.
+
Asynchronously invokes another workflow as a child-workflow and returns a Task that completes + when the child-workflow completes.
-
callSubWorkflow(String, Object, String, Class<V>) - Method in interface io.dapr.workflows.WorkflowContext
+
callChildWorkflow(String, Object, String, Class<V>) - Method in interface io.dapr.workflows.WorkflowContext
-
Asynchronously invokes another workflow as a sub-workflow and returns a Task that completes - when the sub-workflow completes.
+
Asynchronously invokes another workflow as a child-workflow and returns a Task that completes + when the child-workflow completes.
CANCELED - Enum constant in enum class io.dapr.workflows.runtime.WorkflowRuntimeStatus
diff --git a/docs/dapr-sdk-workflows/io/dapr/workflows/DaprWorkflowContextImpl.html b/docs/dapr-sdk-workflows/io/dapr/workflows/DaprWorkflowContextImpl.html index e7b5e054c..02487593f 100644 --- a/docs/dapr-sdk-workflows/io/dapr/workflows/DaprWorkflowContextImpl.html +++ b/docs/dapr-sdk-workflows/io/dapr/workflows/DaprWorkflowContextImpl.html @@ -147,14 +147,14 @@

Method Summary

that completes when the activity completes.
<V> com.microsoft.durabletask.Task<V>
-
callSubWorkflow(String name, +
callChildWorkflow(String name, Object input, String instanceID, com.microsoft.durabletask.TaskOptions options, Class<V> returnType)
-
Asynchronously invokes another workflow as a sub-workflow and returns a Task that completes - when the sub-workflow completes.
+
Asynchronously invokes another workflow as a child-workflow and returns a Task that completes + when the child-workflow completes.
void
complete(Object output)
@@ -248,7 +248,7 @@

Methods inherited from cl clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

+anyOf, callActivity, callActivity, callActivity, callActivity, callActivity, callChildWorkflow, callChildWorkflow, callChildWorkflow, callChildWorkflow, callChildWorkflow, createTimer, waitForExternalEvent @@ -635,9 +635,9 @@

getInput

  • -
    -

    callSubWorkflow

    -
    public <V> com.microsoft.durabletask.Task<V> callSubWorkflow(String name, +
    +

    callChildWorkflow

    +
    public <V> com.microsoft.durabletask.Task<V> callChildWorkflow(String name, @Nullable Object input, @Nullable @@ -645,16 +645,16 @@

    callSubWorkflow

    @Nullable com.microsoft.durabletask.TaskOptions options, Class<V> returnType)
    -
    Asynchronously invokes another workflow as a sub-workflow and returns a Task that completes - when the sub-workflow completes. If the sub-workflow completes successfully, the returned - Task's value will be the activity's output. If the sub-workflow fails, the returned Task +
    Asynchronously invokes another workflow as a child-workflow and returns a Task that completes + when the child-workflow completes. If the child-workflow completes successfully, the returned + Task's value will be the activity's output. If the child-workflow fails, the returned Task will complete exceptionally with a TaskFailedException. -

    A sub-workflow has its own instance ID, history, and status that is independent of the parent workflow - that started it. There are many advantages to breaking down large orchestrations into sub-workflows: +

    A child-workflow has its own instance ID, history, and status that is independent of the parent workflow + that started it. There are many advantages to breaking down large orchestrations into child-workflows:

    • - Splitting large orchestrations into a series of smaller sub-workflows can make code more maintainable. + Splitting large orchestrations into a series of smaller child-workflows can make code more maintainable.
    • Distributing orchestration logic across multiple compute nodes concurrently is useful if @@ -664,25 +664,25 @@

      callSubWorkflow

      Memory usage and CPU overhead can be reduced by keeping the history of parent orchestrations smaller.
    - The disadvantage is that there is overhead associated with starting a sub-workflow and processing its + The disadvantage is that there is overhead associated with starting a child-workflow and processing its output. This is typically only an issue for very small orchestrations. -

    Because sub-workflows are independent of their parents, terminating a parent orchestration does not affect - any sub-workflows. sub-workflows must be terminated independently using their unique instance ID, +

    Because child-workflows are independent of their parents, terminating a parent orchestration does not affect + any child-workflows. child-workflows must be terminated independently using their unique instance ID, which is specified using the instanceID parameter

    Specified by:
    -
    callSubWorkflow in interface WorkflowContext
    +
    callChildWorkflow in interface WorkflowContext
    Type Parameters:
    -
    V - the expected type of the sub-workflow output
    +
    V - the expected type of the child-workflow output
    Parameters:
    name - the name of the workflow to invoke
    -
    input - the serializable input to send to the sub-workflow
    -
    instanceID - the unique ID of the sub-workflow
    +
    input - the serializable input to send to the child-workflow
    +
    instanceID - the unique ID of the child-workflow
    options - additional options that control the execution and processing of the activity
    -
    returnType - the expected class type of the sub-workflow output
    +
    returnType - the expected class type of the child-workflow output
    Returns:
    -
    a new Task that completes when the sub-workflow completes or fails
    +
    a new Task that completes when the child-workflow completes or fails
  • diff --git a/docs/dapr-sdk-workflows/io/dapr/workflows/WorkflowContext.html b/docs/dapr-sdk-workflows/io/dapr/workflows/WorkflowContext.html index 95815969e..0c50ab0af 100644 --- a/docs/dapr-sdk-workflows/io/dapr/workflows/WorkflowContext.html +++ b/docs/dapr-sdk-workflows/io/dapr/workflows/WorkflowContext.html @@ -158,53 +158,53 @@

    Method Summary

    value will be the activity's output.
    default com.microsoft.durabletask.Task<Void>
    - +
    -
    Asynchronously invokes another workflow as a sub-workflow and returns a Task that completes - when the sub-workflow completes.
    +
    Asynchronously invokes another workflow as a child-workflow and returns a Task that completes + when the child-workflow completes.
    default com.microsoft.durabletask.Task<Void>
    -
    callSubWorkflow(String name, +
    -
    Asynchronously invokes another workflow as a sub-workflow and returns a Task that completes - when the sub-workflow completes.
    +
    Asynchronously invokes another workflow as a child-workflow and returns a Task that completes + when the child-workflow completes.
    default <V> com.microsoft.durabletask.Task<V>
    -
    callSubWorkflow(String name, +
    callChildWorkflow(String name, Object input, Class<V> returnType)
    -
    Asynchronously invokes another workflow as a sub-workflow and returns a Task that completes - when the sub-workflow completes.
    +
    Asynchronously invokes another workflow as a child-workflow and returns a Task that completes + when the child-workflow completes.
    default com.microsoft.durabletask.Task<Void>
    -
    callSubWorkflow(String name, +
    callChildWorkflow(String name, Object input, String instanceID, com.microsoft.durabletask.TaskOptions options)
    -
    Asynchronously invokes another workflow as a sub-workflow and returns a Task that completes - when the sub-workflow completes.
    +
    Asynchronously invokes another workflow as a child-workflow and returns a Task that completes + when the child-workflow completes.
    <V> com.microsoft.durabletask.Task<V>
    -
    callSubWorkflow(String name, +
    callChildWorkflow(String name, Object input, String instanceID, com.microsoft.durabletask.TaskOptions options, Class<V> returnType)
    -
    Asynchronously invokes another workflow as a sub-workflow and returns a Task that completes - when the sub-workflow completes.
    +
    Asynchronously invokes another workflow as a child-workflow and returns a Task that completes + when the child-workflow completes.
    default <V> com.microsoft.durabletask.Task<V>
    -
    callSubWorkflow(String name, +
    callChildWorkflow(String name, Object input, String instanceID, Class<V> returnType)
    -
    Asynchronously invokes another workflow as a sub-workflow and returns a Task that completes - when the sub-workflow completes.
    +
    Asynchronously invokes another workflow as a child-workflow and returns a Task that completes + when the child-workflow completes.
    void
    complete(Object output)
    @@ -763,117 +763,117 @@

    getInput

  • -
    -

    callSubWorkflow

    -
    default com.microsoft.durabletask.Task<Void> callSubWorkflow(String name)
    -
    Asynchronously invokes another workflow as a sub-workflow and returns a Task that completes - when the sub-workflow completes. +
    +

    callChildWorkflow

    +
    default com.microsoft.durabletask.Task<Void> callChildWorkflow(String name)
    +
    Asynchronously invokes another workflow as a child-workflow and returns a Task that completes + when the child-workflow completes. -

    See callSubWorkflow(String, Object, String, TaskOptions, Class) for a full description.

    +

    See callChildWorkflow(String, Object, String, TaskOptions, Class) for a full description.

    Parameters:
    name - the name of the workflow to invoke
    Returns:
    -
    a new Task that completes when the sub-workflow completes or fails
    +
    a new Task that completes when the child-workflow completes or fails
    See Also:
  • -
    -

    callSubWorkflow

    -
    default com.microsoft.durabletask.Task<Void> callSubWorkflow(String name, +
    +

    callChildWorkflow

    +
    default com.microsoft.durabletask.Task<Void> callChildWorkflow(String name, Object input)
    -
    Asynchronously invokes another workflow as a sub-workflow and returns a Task that completes - when the sub-workflow completes. +
    Asynchronously invokes another workflow as a child-workflow and returns a Task that completes + when the child-workflow completes. -

    See callSubWorkflow(String, Object, String, TaskOptions, Class) for a full description.

    +

    See callChildWorkflow(String, Object, String, TaskOptions, Class) for a full description.

    Parameters:
    name - the name of the workflow to invoke
    -
    input - the serializable input to send to the sub-workflow
    +
    input - the serializable input to send to the child-workflow
    Returns:
    -
    a new Task that completes when the sub-workflow completes or fails
    +
    a new Task that completes when the child-workflow completes or fails
  • -
    -

    callSubWorkflow

    -
    default <V> com.microsoft.durabletask.Task<V> callSubWorkflow(String name, +
    +

    callChildWorkflow

    +
    default <V> com.microsoft.durabletask.Task<V> callChildWorkflow(String name, Object input, Class<V> returnType)
    -
    Asynchronously invokes another workflow as a sub-workflow and returns a Task that completes - when the sub-workflow completes. +
    Asynchronously invokes another workflow as a child-workflow and returns a Task that completes + when the child-workflow completes. -

    See callSubWorkflow(String, Object, String, TaskOptions, Class) for a full description.

    +

    See callChildWorkflow(String, Object, String, TaskOptions, Class) for a full description.

    Type Parameters:
    -
    V - the expected type of the sub-workflow output
    +
    V - the expected type of the child-workflow output
    Parameters:
    name - the name of the workflow to invoke
    -
    input - the serializable input to send to the sub-workflow
    -
    returnType - the expected class type of the sub-workflow output
    +
    input - the serializable input to send to the child-workflow
    +
    returnType - the expected class type of the child-workflow output
    Returns:
    -
    a new Task that completes when the sub-workflow completes or fails
    +
    a new Task that completes when the child-workflow completes or fails
  • -
    -

    callSubWorkflow

    -
    default <V> com.microsoft.durabletask.Task<V> callSubWorkflow(String name, +
    +

    callChildWorkflow

    +
    default <V> com.microsoft.durabletask.Task<V> callChildWorkflow(String name, Object input, String instanceID, Class<V> returnType)
    -
    Asynchronously invokes another workflow as a sub-workflow and returns a Task that completes - when the sub-workflow completes. +
    Asynchronously invokes another workflow as a child-workflow and returns a Task that completes + when the child-workflow completes. -

    See callSubWorkflow(String, Object, String, TaskOptions, Class) for a full description.

    +

    See callChildWorkflow(String, Object, String, TaskOptions, Class) for a full description.

    Type Parameters:
    -
    V - the expected type of the sub-workflow output
    +
    V - the expected type of the child-workflow output
    Parameters:
    name - the name of the workflow to invoke
    -
    input - the serializable input to send to the sub-workflow
    -
    instanceID - the unique ID of the sub-workflow
    -
    returnType - the expected class type of the sub-workflow output
    +
    input - the serializable input to send to the child-workflow
    +
    instanceID - the unique ID of the child-workflow
    +
    returnType - the expected class type of the child-workflow output
    Returns:
    -
    a new Task that completes when the sub-workflow completes or fails
    +
    a new Task that completes when the child-workflow completes or fails
  • -
    -

    callSubWorkflow

    -
    default com.microsoft.durabletask.Task<Void> callSubWorkflow(String name, +
    +

    callChildWorkflow

    +
    default com.microsoft.durabletask.Task<Void> callChildWorkflow(String name, Object input, String instanceID, com.microsoft.durabletask.TaskOptions options)
    -
    Asynchronously invokes another workflow as a sub-workflow and returns a Task that completes - when the sub-workflow completes. +
    Asynchronously invokes another workflow as a child-workflow and returns a Task that completes + when the child-workflow completes. -

    See callSubWorkflow(String, Object, String, TaskOptions, Class) for a full description.

    +

    See callChildWorkflow(String, Object, String, TaskOptions, Class) for a full description.

    Parameters:
    name - the name of the workflow to invoke
    -
    input - the serializable input to send to the sub-workflow
    -
    instanceID - the unique ID of the sub-workflow
    +
    input - the serializable input to send to the child-workflow
    +
    instanceID - the unique ID of the child-workflow
    options - additional options that control the execution and processing of the activity
    Returns:
    -
    a new Task that completes when the sub-workflow completes or fails
    +
    a new Task that completes when the child-workflow completes or fails
  • -
    -

    callSubWorkflow

    -
    <V> com.microsoft.durabletask.Task<V> callSubWorkflow(String name, +
    +

    callChildWorkflow

    +
    <V> com.microsoft.durabletask.Task<V> callChildWorkflow(String name, @Nullable Object input, @Nullable @@ -881,16 +881,16 @@

    callSubWorkflow

    @Nullable com.microsoft.durabletask.TaskOptions options, Class<V> returnType)
    -
    Asynchronously invokes another workflow as a sub-workflow and returns a Task that completes - when the sub-workflow completes. If the sub-workflow completes successfully, the returned - Task's value will be the activity's output. If the sub-workflow fails, the returned Task +
    Asynchronously invokes another workflow as a child-workflow and returns a Task that completes + when the child-workflow completes. If the child-workflow completes successfully, the returned + Task's value will be the activity's output. If the child-workflow fails, the returned Task will complete exceptionally with a TaskFailedException. -

    A sub-workflow has its own instance ID, history, and status that is independent of the parent workflow - that started it. There are many advantages to breaking down large orchestrations into sub-workflows: +

    A child-workflow has its own instance ID, history, and status that is independent of the parent workflow + that started it. There are many advantages to breaking down large orchestrations into child-workflows:

    • - Splitting large orchestrations into a series of smaller sub-workflows can make code more maintainable. + Splitting large orchestrations into a series of smaller child-workflows can make code more maintainable.
    • Distributing orchestration logic across multiple compute nodes concurrently is useful if @@ -900,23 +900,23 @@

      callSubWorkflow

      Memory usage and CPU overhead can be reduced by keeping the history of parent orchestrations smaller.
    - The disadvantage is that there is overhead associated with starting a sub-workflow and processing its + The disadvantage is that there is overhead associated with starting a child-workflow and processing its output. This is typically only an issue for very small orchestrations. -

    Because sub-workflows are independent of their parents, terminating a parent orchestration does not affect - any sub-workflows. sub-workflows must be terminated independently using their unique instance ID, +

    Because child-workflows are independent of their parents, terminating a parent orchestration does not affect + any child-workflows. child-workflows must be terminated independently using their unique instance ID, which is specified using the instanceID parameter

    Type Parameters:
    -
    V - the expected type of the sub-workflow output
    +
    V - the expected type of the child-workflow output
    Parameters:
    name - the name of the workflow to invoke
    -
    input - the serializable input to send to the sub-workflow
    -
    instanceID - the unique ID of the sub-workflow
    +
    input - the serializable input to send to the child-workflow
    +
    instanceID - the unique ID of the child-workflow
    options - additional options that control the execution and processing of the activity
    -
    returnType - the expected class type of the sub-workflow output
    +
    returnType - the expected class type of the child-workflow output
    Returns:
    -
    a new Task that completes when the sub-workflow completes or fails
    +
    a new Task that completes when the child-workflow completes or fails
  • diff --git a/docs/dapr-sdk-workflows/member-search-index.js b/docs/dapr-sdk-workflows/member-search-index.js index 6b88ab600..62ad4fa21 100644 --- a/docs/dapr-sdk-workflows/member-search-index.js +++ b/docs/dapr-sdk-workflows/member-search-index.js @@ -1 +1 @@ -memberSearchIndex = [{"p":"io.dapr.workflows.runtime","c":"ActivityWrapper","l":"ActivityWrapper(Class)","u":"%3Cinit%3E(java.lang.Class)"},{"p":"io.dapr.workflows","c":"DaprWorkflowContextImpl","l":"allOf(List>)","u":"allOf(java.util.List)"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"allOf(List>)","u":"allOf(java.util.List)"},{"p":"io.dapr.workflows","c":"DaprWorkflowContextImpl","l":"anyOf(List>)","u":"anyOf(java.util.List)"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"anyOf(List>)","u":"anyOf(java.util.List)"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"anyOf(Task...)","u":"anyOf(com.microsoft.durabletask.Task...)"},{"p":"io.dapr.workflows.internal","c":"ApiTokenClientInterceptor","l":"ApiTokenClientInterceptor()","u":"%3Cinit%3E()"},{"p":"io.dapr.workflows.runtime","c":"WorkflowRuntimeBuilder","l":"build()"},{"p":"io.dapr.workflows.saga","c":"SagaOption.Builder","l":"build()"},{"p":"io.dapr.workflows.saga","c":"SagaOption.Builder","l":"Builder()","u":"%3Cinit%3E()"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"callActivity(String)","u":"callActivity(java.lang.String)"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"callActivity(String, Class)","u":"callActivity(java.lang.String,java.lang.Class)"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"callActivity(String, Object)","u":"callActivity(java.lang.String,java.lang.Object)"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"callActivity(String, Object, Class)","u":"callActivity(java.lang.String,java.lang.Object,java.lang.Class)"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"callActivity(String, Object, TaskOptions)","u":"callActivity(java.lang.String,java.lang.Object,com.microsoft.durabletask.TaskOptions)"},{"p":"io.dapr.workflows","c":"DaprWorkflowContextImpl","l":"callActivity(String, Object, TaskOptions, Class)","u":"callActivity(java.lang.String,java.lang.Object,com.microsoft.durabletask.TaskOptions,java.lang.Class)"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"callActivity(String, Object, TaskOptions, Class)","u":"callActivity(java.lang.String,java.lang.Object,com.microsoft.durabletask.TaskOptions,java.lang.Class)"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"callSubWorkflow(String)","u":"callSubWorkflow(java.lang.String)"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"callSubWorkflow(String, Object)","u":"callSubWorkflow(java.lang.String,java.lang.Object)"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"callSubWorkflow(String, Object, Class)","u":"callSubWorkflow(java.lang.String,java.lang.Object,java.lang.Class)"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"callSubWorkflow(String, Object, String, Class)","u":"callSubWorkflow(java.lang.String,java.lang.Object,java.lang.String,java.lang.Class)"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"callSubWorkflow(String, Object, String, TaskOptions)","u":"callSubWorkflow(java.lang.String,java.lang.Object,java.lang.String,com.microsoft.durabletask.TaskOptions)"},{"p":"io.dapr.workflows","c":"DaprWorkflowContextImpl","l":"callSubWorkflow(String, Object, String, TaskOptions, Class)","u":"callSubWorkflow(java.lang.String,java.lang.Object,java.lang.String,com.microsoft.durabletask.TaskOptions,java.lang.Class)"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"callSubWorkflow(String, Object, String, TaskOptions, Class)","u":"callSubWorkflow(java.lang.String,java.lang.Object,java.lang.String,com.microsoft.durabletask.TaskOptions,java.lang.Class)"},{"p":"io.dapr.workflows.runtime","c":"WorkflowRuntimeStatus","l":"CANCELED"},{"p":"io.dapr.workflows.client","c":"DaprWorkflowClient","l":"close()"},{"p":"io.dapr.workflows.runtime","c":"WorkflowRuntime","l":"close()"},{"p":"io.dapr.workflows.saga","c":"DaprSagaContextImpl","l":"compensate()"},{"p":"io.dapr.workflows.saga","c":"SagaContext","l":"compensate()"},{"p":"io.dapr.workflows.saga","c":"Saga","l":"compensate(WorkflowContext)","u":"compensate(io.dapr.workflows.WorkflowContext)"},{"p":"io.dapr.workflows","c":"DaprWorkflowContextImpl","l":"complete(Object)","u":"complete(java.lang.Object)"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"complete(Object)","u":"complete(java.lang.Object)"},{"p":"io.dapr.workflows.runtime","c":"WorkflowRuntimeStatus","l":"COMPLETED"},{"p":"io.dapr.workflows","c":"DaprWorkflowContextImpl","l":"continueAsNew(Object)","u":"continueAsNew(java.lang.Object)"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"continueAsNew(Object)","u":"continueAsNew(java.lang.Object)"},{"p":"io.dapr.workflows","c":"DaprWorkflowContextImpl","l":"continueAsNew(Object, boolean)","u":"continueAsNew(java.lang.Object,boolean)"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"continueAsNew(Object, boolean)","u":"continueAsNew(java.lang.Object,boolean)"},{"p":"io.dapr.workflows.runtime","c":"WorkflowRuntimeStatus","l":"CONTINUED_AS_NEW"},{"p":"io.dapr.workflows.runtime","c":"ActivityWrapper","l":"create()"},{"p":"io.dapr.workflows","c":"Workflow","l":"create()"},{"p":"io.dapr.workflows.client","c":"DaprWorkflowClient","l":"createTaskHub(boolean)"},{"p":"io.dapr.workflows","c":"DaprWorkflowContextImpl","l":"createTimer(Duration)","u":"createTimer(java.time.Duration)"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"createTimer(Duration)","u":"createTimer(java.time.Duration)"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"createTimer(ZonedDateTime)","u":"createTimer(java.time.ZonedDateTime)"},{"p":"io.dapr.workflows.saga","c":"DaprSagaContextImpl","l":"DaprSagaContextImpl(Saga, WorkflowContext)","u":"%3Cinit%3E(io.dapr.workflows.saga.Saga,io.dapr.workflows.WorkflowContext)"},{"p":"io.dapr.workflows.client","c":"DaprWorkflowClient","l":"DaprWorkflowClient()","u":"%3Cinit%3E()"},{"p":"io.dapr.workflows","c":"DaprWorkflowContextImpl","l":"DaprWorkflowContextImpl(TaskOrchestrationContext)","u":"%3Cinit%3E(com.microsoft.durabletask.TaskOrchestrationContext)"},{"p":"io.dapr.workflows","c":"DaprWorkflowContextImpl","l":"DaprWorkflowContextImpl(TaskOrchestrationContext, Logger)","u":"%3Cinit%3E(com.microsoft.durabletask.TaskOrchestrationContext,org.slf4j.Logger)"},{"p":"io.dapr.workflows","c":"DaprWorkflowContextImpl","l":"DaprWorkflowContextImpl(TaskOrchestrationContext, Logger, Saga)","u":"%3Cinit%3E(com.microsoft.durabletask.TaskOrchestrationContext,org.slf4j.Logger,io.dapr.workflows.saga.Saga)"},{"p":"io.dapr.workflows","c":"DaprWorkflowContextImpl","l":"DaprWorkflowContextImpl(TaskOrchestrationContext, Saga)","u":"%3Cinit%3E(com.microsoft.durabletask.TaskOrchestrationContext,io.dapr.workflows.saga.Saga)"},{"p":"io.dapr.workflows.client","c":"DaprWorkflowClient","l":"deleteTaskHub()"},{"p":"io.dapr.workflows.runtime","c":"WorkflowRuntimeStatus","l":"FAILED"},{"p":"io.dapr.workflows.runtime","c":"WorkflowRuntimeStatus","l":"fromOrchestrationRuntimeStatus(OrchestrationRuntimeStatus)","u":"fromOrchestrationRuntimeStatus(com.microsoft.durabletask.OrchestrationRuntimeStatus)"},{"p":"io.dapr.workflows.client","c":"WorkflowInstanceStatus","l":"getCreatedAt()"},{"p":"io.dapr.workflows","c":"DaprWorkflowContextImpl","l":"getCurrentInstant()"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"getCurrentInstant()"},{"p":"io.dapr.workflows.client","c":"WorkflowFailureDetails","l":"getErrorMessage()"},{"p":"io.dapr.workflows.client","c":"WorkflowFailureDetails","l":"getErrorType()"},{"p":"io.dapr.workflows.client","c":"WorkflowInstanceStatus","l":"getFailureDetails()"},{"p":"io.dapr.workflows.client","c":"NewWorkflowOption","l":"getInput()"},{"p":"io.dapr.workflows","c":"DaprWorkflowContextImpl","l":"getInput(Class)","u":"getInput(java.lang.Class)"},{"p":"io.dapr.workflows.runtime","c":"WorkflowActivityContext","l":"getInput(Class)","u":"getInput(java.lang.Class)"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"getInput(Class)","u":"getInput(java.lang.Class)"},{"p":"io.dapr.workflows.client","c":"NewWorkflowOption","l":"getInstanceId()"},{"p":"io.dapr.workflows.client","c":"WorkflowInstanceStatus","l":"getInstanceId()"},{"p":"io.dapr.workflows","c":"DaprWorkflowContextImpl","l":"getInstanceId()"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"getInstanceId()"},{"p":"io.dapr.workflows.client","c":"DaprWorkflowClient","l":"getInstanceState(String, boolean)","u":"getInstanceState(java.lang.String,boolean)"},{"p":"io.dapr.workflows.client","c":"WorkflowInstanceStatus","l":"getLastUpdatedAt()"},{"p":"io.dapr.workflows","c":"DaprWorkflowContextImpl","l":"getLogger()"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"getLogger()"},{"p":"io.dapr.workflows.saga","c":"SagaOption","l":"getMaxParallelThread()"},{"p":"io.dapr.workflows.client","c":"WorkflowInstanceStatus","l":"getName()"},{"p":"io.dapr.workflows","c":"DaprWorkflowContextImpl","l":"getName()"},{"p":"io.dapr.workflows.runtime","c":"ActivityWrapper","l":"getName()"},{"p":"io.dapr.workflows.runtime","c":"WorkflowActivityContext","l":"getName()"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"getName()"},{"p":"io.dapr.workflows.client","c":"NewWorkflowOption","l":"getNewOrchestrationInstanceOptions()"},{"p":"io.dapr.workflows.client","c":"WorkflowInstanceStatus","l":"getRuntimeStatus()"},{"p":"io.dapr.workflows","c":"DaprWorkflowContextImpl","l":"getSagaContext()"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"getSagaContext()"},{"p":"io.dapr.workflows","c":"Workflow","l":"getSagaOption()"},{"p":"io.dapr.workflows.client","c":"WorkflowInstanceStatus","l":"getSerializedInput()"},{"p":"io.dapr.workflows.client","c":"WorkflowInstanceStatus","l":"getSerializedOutput()"},{"p":"io.dapr.workflows.client","c":"WorkflowFailureDetails","l":"getStackTrace()"},{"p":"io.dapr.workflows.client","c":"NewWorkflowOption","l":"getStartTime()"},{"p":"io.dapr.workflows.client","c":"NewWorkflowOption","l":"getVersion()"},{"p":"io.dapr.workflows.internal","c":"ApiTokenClientInterceptor","l":"interceptCall(MethodDescriptor, CallOptions, Channel)","u":"interceptCall(io.grpc.MethodDescriptor,io.grpc.CallOptions,io.grpc.Channel)"},{"p":"io.dapr.workflows.client","c":"WorkflowInstanceStatus","l":"isCompleted()"},{"p":"io.dapr.workflows.saga","c":"SagaOption","l":"isContinueWithError()"},{"p":"io.dapr.workflows.saga","c":"SagaOption","l":"isParallelCompensation()"},{"p":"io.dapr.workflows","c":"DaprWorkflowContextImpl","l":"isReplaying()"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"isReplaying()"},{"p":"io.dapr.workflows.client","c":"WorkflowInstanceStatus","l":"isRunning()"},{"p":"io.dapr.workflows","c":"Workflow","l":"isSagaEnabled()"},{"p":"io.dapr.workflows.saga","c":"SagaOption","l":"newBuilder()"},{"p":"io.dapr.workflows","c":"DaprWorkflowContextImpl","l":"newUuid()"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"newUuid()"},{"p":"io.dapr.workflows.client","c":"NewWorkflowOption","l":"NewWorkflowOption()","u":"%3Cinit%3E()"},{"p":"io.dapr.workflows.runtime","c":"WorkflowRuntimeStatus","l":"PENDING"},{"p":"io.dapr.workflows.client","c":"DaprWorkflowClient","l":"purgeInstance(String)","u":"purgeInstance(java.lang.String)"},{"p":"io.dapr.workflows.client","c":"DaprWorkflowClient","l":"raiseEvent(String, String, Object)","u":"raiseEvent(java.lang.String,java.lang.String,java.lang.Object)"},{"p":"io.dapr.workflows.client","c":"WorkflowInstanceStatus","l":"readInputAs(Class)","u":"readInputAs(java.lang.Class)"},{"p":"io.dapr.workflows.client","c":"WorkflowInstanceStatus","l":"readOutputAs(Class)","u":"readOutputAs(java.lang.Class)"},{"p":"io.dapr.workflows.runtime","c":"WorkflowRuntimeBuilder","l":"registerActivity(Class)","u":"registerActivity(java.lang.Class)"},{"p":"io.dapr.workflows.saga","c":"DaprSagaContextImpl","l":"registerCompensation(String, Object)","u":"registerCompensation(java.lang.String,java.lang.Object)"},{"p":"io.dapr.workflows.saga","c":"Saga","l":"registerCompensation(String, Object)","u":"registerCompensation(java.lang.String,java.lang.Object)"},{"p":"io.dapr.workflows.saga","c":"SagaContext","l":"registerCompensation(String, Object)","u":"registerCompensation(java.lang.String,java.lang.Object)"},{"p":"io.dapr.workflows.saga","c":"Saga","l":"registerCompensation(String, Object, TaskOptions)","u":"registerCompensation(java.lang.String,java.lang.Object,com.microsoft.durabletask.TaskOptions)"},{"p":"io.dapr.workflows.runtime","c":"WorkflowRuntimeBuilder","l":"registerWorkflow(Class)","u":"registerWorkflow(java.lang.Class)"},{"p":"io.dapr.workflows.runtime","c":"WorkflowActivity","l":"run(WorkflowActivityContext)","u":"run(io.dapr.workflows.runtime.WorkflowActivityContext)"},{"p":"io.dapr.workflows","c":"Workflow","l":"run(WorkflowContext)","u":"run(io.dapr.workflows.WorkflowContext)"},{"p":"io.dapr.workflows","c":"WorkflowStub","l":"run(WorkflowContext)","u":"run(io.dapr.workflows.WorkflowContext)"},{"p":"io.dapr.workflows.runtime","c":"WorkflowRuntimeStatus","l":"RUNNING"},{"p":"io.dapr.workflows.saga","c":"Saga","l":"Saga(SagaOption)","u":"%3Cinit%3E(io.dapr.workflows.saga.SagaOption)"},{"p":"io.dapr.workflows.saga","c":"SagaCompensationException","l":"SagaCompensationException(String, Exception)","u":"%3Cinit%3E(java.lang.String,java.lang.Exception)"},{"p":"io.dapr.workflows.client","c":"DaprWorkflowClient","l":"scheduleNewWorkflow(Class)","u":"scheduleNewWorkflow(java.lang.Class)"},{"p":"io.dapr.workflows.client","c":"DaprWorkflowClient","l":"scheduleNewWorkflow(Class, NewWorkflowOption)","u":"scheduleNewWorkflow(java.lang.Class,io.dapr.workflows.client.NewWorkflowOption)"},{"p":"io.dapr.workflows.client","c":"DaprWorkflowClient","l":"scheduleNewWorkflow(Class, Object)","u":"scheduleNewWorkflow(java.lang.Class,java.lang.Object)"},{"p":"io.dapr.workflows.client","c":"DaprWorkflowClient","l":"scheduleNewWorkflow(Class, Object, String)","u":"scheduleNewWorkflow(java.lang.Class,java.lang.Object,java.lang.String)"},{"p":"io.dapr.workflows.saga","c":"SagaOption.Builder","l":"setContinueWithError(boolean)"},{"p":"io.dapr.workflows.client","c":"NewWorkflowOption","l":"setInput(Object)","u":"setInput(java.lang.Object)"},{"p":"io.dapr.workflows.client","c":"NewWorkflowOption","l":"setInstanceId(String)","u":"setInstanceId(java.lang.String)"},{"p":"io.dapr.workflows.saga","c":"SagaOption.Builder","l":"setMaxParallelThread(int)"},{"p":"io.dapr.workflows.saga","c":"SagaOption.Builder","l":"setParallelCompensation(boolean)"},{"p":"io.dapr.workflows.client","c":"NewWorkflowOption","l":"setStartTime(Instant)","u":"setStartTime(java.time.Instant)"},{"p":"io.dapr.workflows.client","c":"NewWorkflowOption","l":"setVersion(String)","u":"setVersion(java.lang.String)"},{"p":"io.dapr.workflows.runtime","c":"WorkflowRuntime","l":"start()"},{"p":"io.dapr.workflows.runtime","c":"WorkflowRuntime","l":"start(boolean)"},{"p":"io.dapr.workflows.runtime","c":"WorkflowRuntimeStatus","l":"SUSPENDED"},{"p":"io.dapr.workflows.runtime","c":"WorkflowRuntimeStatus","l":"TERMINATED"},{"p":"io.dapr.workflows.client","c":"DaprWorkflowClient","l":"terminateWorkflow(String, Object)","u":"terminateWorkflow(java.lang.String,java.lang.Object)"},{"p":"io.dapr.workflows.runtime","c":"WorkflowRuntimeStatus","l":"toOrchestrationRuntimeStatus(List)","u":"toOrchestrationRuntimeStatus(java.util.List)"},{"p":"io.dapr.workflows.runtime","c":"WorkflowRuntimeStatus","l":"toOrchestrationRuntimeStatus(WorkflowRuntimeStatus)","u":"toOrchestrationRuntimeStatus(io.dapr.workflows.runtime.WorkflowRuntimeStatus)"},{"p":"io.dapr.workflows.client","c":"WorkflowFailureDetails","l":"toString()"},{"p":"io.dapr.workflows.client","c":"WorkflowInstanceStatus","l":"toString()"},{"p":"io.dapr.workflows.runtime","c":"WorkflowRuntimeStatus","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"io.dapr.workflows.runtime","c":"WorkflowRuntimeStatus","l":"values()"},{"p":"io.dapr.workflows","c":"DaprWorkflowContextImpl","l":"waitForExternalEvent(String)","u":"waitForExternalEvent(java.lang.String)"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"waitForExternalEvent(String)","u":"waitForExternalEvent(java.lang.String)"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"waitForExternalEvent(String, Class)","u":"waitForExternalEvent(java.lang.String,java.lang.Class)"},{"p":"io.dapr.workflows","c":"DaprWorkflowContextImpl","l":"waitForExternalEvent(String, Duration)","u":"waitForExternalEvent(java.lang.String,java.time.Duration)"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"waitForExternalEvent(String, Duration)","u":"waitForExternalEvent(java.lang.String,java.time.Duration)"},{"p":"io.dapr.workflows","c":"DaprWorkflowContextImpl","l":"waitForExternalEvent(String, Duration, Class)","u":"waitForExternalEvent(java.lang.String,java.time.Duration,java.lang.Class)"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"waitForExternalEvent(String, Duration, Class)","u":"waitForExternalEvent(java.lang.String,java.time.Duration,java.lang.Class)"},{"p":"io.dapr.workflows.client","c":"DaprWorkflowClient","l":"waitForInstanceCompletion(String, Duration, boolean)","u":"waitForInstanceCompletion(java.lang.String,java.time.Duration,boolean)"},{"p":"io.dapr.workflows.client","c":"DaprWorkflowClient","l":"waitForInstanceStart(String, Duration, boolean)","u":"waitForInstanceStart(java.lang.String,java.time.Duration,boolean)"},{"p":"io.dapr.workflows","c":"Workflow","l":"Workflow()","u":"%3Cinit%3E()"},{"p":"io.dapr.workflows.runtime","c":"WorkflowActivityContext","l":"WorkflowActivityContext(TaskActivityContext)","u":"%3Cinit%3E(com.microsoft.durabletask.TaskActivityContext)"},{"p":"io.dapr.workflows.client","c":"WorkflowFailureDetails","l":"WorkflowFailureDetails(FailureDetails)","u":"%3Cinit%3E(com.microsoft.durabletask.FailureDetails)"},{"p":"io.dapr.workflows.client","c":"WorkflowInstanceStatus","l":"WorkflowInstanceStatus(OrchestrationMetadata)","u":"%3Cinit%3E(com.microsoft.durabletask.OrchestrationMetadata)"},{"p":"io.dapr.workflows.runtime","c":"WorkflowRuntime","l":"WorkflowRuntime(DurableTaskGrpcWorker)","u":"%3Cinit%3E(com.microsoft.durabletask.DurableTaskGrpcWorker)"},{"p":"io.dapr.workflows.runtime","c":"WorkflowRuntimeBuilder","l":"WorkflowRuntimeBuilder()","u":"%3Cinit%3E()"}];updateSearchResults(); \ No newline at end of file +memberSearchIndex = [{"p":"io.dapr.workflows.runtime","c":"ActivityWrapper","l":"ActivityWrapper(Class)","u":"%3Cinit%3E(java.lang.Class)"},{"p":"io.dapr.workflows","c":"DaprWorkflowContextImpl","l":"allOf(List>)","u":"allOf(java.util.List)"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"allOf(List>)","u":"allOf(java.util.List)"},{"p":"io.dapr.workflows","c":"DaprWorkflowContextImpl","l":"anyOf(List>)","u":"anyOf(java.util.List)"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"anyOf(List>)","u":"anyOf(java.util.List)"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"anyOf(Task...)","u":"anyOf(com.microsoft.durabletask.Task...)"},{"p":"io.dapr.workflows.internal","c":"ApiTokenClientInterceptor","l":"ApiTokenClientInterceptor()","u":"%3Cinit%3E()"},{"p":"io.dapr.workflows.runtime","c":"WorkflowRuntimeBuilder","l":"build()"},{"p":"io.dapr.workflows.saga","c":"SagaOption.Builder","l":"build()"},{"p":"io.dapr.workflows.saga","c":"SagaOption.Builder","l":"Builder()","u":"%3Cinit%3E()"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"callActivity(String)","u":"callActivity(java.lang.String)"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"callActivity(String, Class)","u":"callActivity(java.lang.String,java.lang.Class)"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"callActivity(String, Object)","u":"callActivity(java.lang.String,java.lang.Object)"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"callActivity(String, Object, Class)","u":"callActivity(java.lang.String,java.lang.Object,java.lang.Class)"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"callActivity(String, Object, TaskOptions)","u":"callActivity(java.lang.String,java.lang.Object,com.microsoft.durabletask.TaskOptions)"},{"p":"io.dapr.workflows","c":"DaprWorkflowContextImpl","l":"callActivity(String, Object, TaskOptions, Class)","u":"callActivity(java.lang.String,java.lang.Object,com.microsoft.durabletask.TaskOptions,java.lang.Class)"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"callActivity(String, Object, TaskOptions, Class)","u":"callActivity(java.lang.String,java.lang.Object,com.microsoft.durabletask.TaskOptions,java.lang.Class)"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"callChildWorkflow(String)","u":"callChildWorkflow(java.lang.String)"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"callChildWorkflow(String, Object)","u":"callChildWorkflow(java.lang.String,java.lang.Object)"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"callChildWorkflow(String, Object, Class)","u":"callChildWorkflow(java.lang.String,java.lang.Object,java.lang.Class)"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"callChildWorkflow(String, Object, String, Class)","u":"callChildWorkflow(java.lang.String,java.lang.Object,java.lang.String,java.lang.Class)"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"callChildWorkflow(String, Object, String, TaskOptions)","u":"callChildWorkflow(java.lang.String,java.lang.Object,java.lang.String,com.microsoft.durabletask.TaskOptions)"},{"p":"io.dapr.workflows","c":"DaprWorkflowContextImpl","l":"callChildWorkflow(String, Object, String, TaskOptions, Class)","u":"callChildWorkflow(java.lang.String,java.lang.Object,java.lang.String,com.microsoft.durabletask.TaskOptions,java.lang.Class)"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"callChildWorkflow(String, Object, String, TaskOptions, Class)","u":"callChildWorkflow(java.lang.String,java.lang.Object,java.lang.String,com.microsoft.durabletask.TaskOptions,java.lang.Class)"},{"p":"io.dapr.workflows.runtime","c":"WorkflowRuntimeStatus","l":"CANCELED"},{"p":"io.dapr.workflows.client","c":"DaprWorkflowClient","l":"close()"},{"p":"io.dapr.workflows.runtime","c":"WorkflowRuntime","l":"close()"},{"p":"io.dapr.workflows.saga","c":"DaprSagaContextImpl","l":"compensate()"},{"p":"io.dapr.workflows.saga","c":"SagaContext","l":"compensate()"},{"p":"io.dapr.workflows.saga","c":"Saga","l":"compensate(WorkflowContext)","u":"compensate(io.dapr.workflows.WorkflowContext)"},{"p":"io.dapr.workflows","c":"DaprWorkflowContextImpl","l":"complete(Object)","u":"complete(java.lang.Object)"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"complete(Object)","u":"complete(java.lang.Object)"},{"p":"io.dapr.workflows.runtime","c":"WorkflowRuntimeStatus","l":"COMPLETED"},{"p":"io.dapr.workflows","c":"DaprWorkflowContextImpl","l":"continueAsNew(Object)","u":"continueAsNew(java.lang.Object)"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"continueAsNew(Object)","u":"continueAsNew(java.lang.Object)"},{"p":"io.dapr.workflows","c":"DaprWorkflowContextImpl","l":"continueAsNew(Object, boolean)","u":"continueAsNew(java.lang.Object,boolean)"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"continueAsNew(Object, boolean)","u":"continueAsNew(java.lang.Object,boolean)"},{"p":"io.dapr.workflows.runtime","c":"WorkflowRuntimeStatus","l":"CONTINUED_AS_NEW"},{"p":"io.dapr.workflows.runtime","c":"ActivityWrapper","l":"create()"},{"p":"io.dapr.workflows","c":"Workflow","l":"create()"},{"p":"io.dapr.workflows.client","c":"DaprWorkflowClient","l":"createTaskHub(boolean)"},{"p":"io.dapr.workflows","c":"DaprWorkflowContextImpl","l":"createTimer(Duration)","u":"createTimer(java.time.Duration)"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"createTimer(Duration)","u":"createTimer(java.time.Duration)"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"createTimer(ZonedDateTime)","u":"createTimer(java.time.ZonedDateTime)"},{"p":"io.dapr.workflows.saga","c":"DaprSagaContextImpl","l":"DaprSagaContextImpl(Saga, WorkflowContext)","u":"%3Cinit%3E(io.dapr.workflows.saga.Saga,io.dapr.workflows.WorkflowContext)"},{"p":"io.dapr.workflows.client","c":"DaprWorkflowClient","l":"DaprWorkflowClient()","u":"%3Cinit%3E()"},{"p":"io.dapr.workflows","c":"DaprWorkflowContextImpl","l":"DaprWorkflowContextImpl(TaskOrchestrationContext)","u":"%3Cinit%3E(com.microsoft.durabletask.TaskOrchestrationContext)"},{"p":"io.dapr.workflows","c":"DaprWorkflowContextImpl","l":"DaprWorkflowContextImpl(TaskOrchestrationContext, Logger)","u":"%3Cinit%3E(com.microsoft.durabletask.TaskOrchestrationContext,org.slf4j.Logger)"},{"p":"io.dapr.workflows","c":"DaprWorkflowContextImpl","l":"DaprWorkflowContextImpl(TaskOrchestrationContext, Logger, Saga)","u":"%3Cinit%3E(com.microsoft.durabletask.TaskOrchestrationContext,org.slf4j.Logger,io.dapr.workflows.saga.Saga)"},{"p":"io.dapr.workflows","c":"DaprWorkflowContextImpl","l":"DaprWorkflowContextImpl(TaskOrchestrationContext, Saga)","u":"%3Cinit%3E(com.microsoft.durabletask.TaskOrchestrationContext,io.dapr.workflows.saga.Saga)"},{"p":"io.dapr.workflows.client","c":"DaprWorkflowClient","l":"deleteTaskHub()"},{"p":"io.dapr.workflows.runtime","c":"WorkflowRuntimeStatus","l":"FAILED"},{"p":"io.dapr.workflows.runtime","c":"WorkflowRuntimeStatus","l":"fromOrchestrationRuntimeStatus(OrchestrationRuntimeStatus)","u":"fromOrchestrationRuntimeStatus(com.microsoft.durabletask.OrchestrationRuntimeStatus)"},{"p":"io.dapr.workflows.client","c":"WorkflowInstanceStatus","l":"getCreatedAt()"},{"p":"io.dapr.workflows","c":"DaprWorkflowContextImpl","l":"getCurrentInstant()"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"getCurrentInstant()"},{"p":"io.dapr.workflows.client","c":"WorkflowFailureDetails","l":"getErrorMessage()"},{"p":"io.dapr.workflows.client","c":"WorkflowFailureDetails","l":"getErrorType()"},{"p":"io.dapr.workflows.client","c":"WorkflowInstanceStatus","l":"getFailureDetails()"},{"p":"io.dapr.workflows.client","c":"NewWorkflowOption","l":"getInput()"},{"p":"io.dapr.workflows","c":"DaprWorkflowContextImpl","l":"getInput(Class)","u":"getInput(java.lang.Class)"},{"p":"io.dapr.workflows.runtime","c":"WorkflowActivityContext","l":"getInput(Class)","u":"getInput(java.lang.Class)"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"getInput(Class)","u":"getInput(java.lang.Class)"},{"p":"io.dapr.workflows.client","c":"NewWorkflowOption","l":"getInstanceId()"},{"p":"io.dapr.workflows.client","c":"WorkflowInstanceStatus","l":"getInstanceId()"},{"p":"io.dapr.workflows","c":"DaprWorkflowContextImpl","l":"getInstanceId()"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"getInstanceId()"},{"p":"io.dapr.workflows.client","c":"DaprWorkflowClient","l":"getInstanceState(String, boolean)","u":"getInstanceState(java.lang.String,boolean)"},{"p":"io.dapr.workflows.client","c":"WorkflowInstanceStatus","l":"getLastUpdatedAt()"},{"p":"io.dapr.workflows","c":"DaprWorkflowContextImpl","l":"getLogger()"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"getLogger()"},{"p":"io.dapr.workflows.saga","c":"SagaOption","l":"getMaxParallelThread()"},{"p":"io.dapr.workflows.client","c":"WorkflowInstanceStatus","l":"getName()"},{"p":"io.dapr.workflows","c":"DaprWorkflowContextImpl","l":"getName()"},{"p":"io.dapr.workflows.runtime","c":"ActivityWrapper","l":"getName()"},{"p":"io.dapr.workflows.runtime","c":"WorkflowActivityContext","l":"getName()"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"getName()"},{"p":"io.dapr.workflows.client","c":"NewWorkflowOption","l":"getNewOrchestrationInstanceOptions()"},{"p":"io.dapr.workflows.client","c":"WorkflowInstanceStatus","l":"getRuntimeStatus()"},{"p":"io.dapr.workflows","c":"DaprWorkflowContextImpl","l":"getSagaContext()"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"getSagaContext()"},{"p":"io.dapr.workflows","c":"Workflow","l":"getSagaOption()"},{"p":"io.dapr.workflows.client","c":"WorkflowInstanceStatus","l":"getSerializedInput()"},{"p":"io.dapr.workflows.client","c":"WorkflowInstanceStatus","l":"getSerializedOutput()"},{"p":"io.dapr.workflows.client","c":"WorkflowFailureDetails","l":"getStackTrace()"},{"p":"io.dapr.workflows.client","c":"NewWorkflowOption","l":"getStartTime()"},{"p":"io.dapr.workflows.client","c":"NewWorkflowOption","l":"getVersion()"},{"p":"io.dapr.workflows.internal","c":"ApiTokenClientInterceptor","l":"interceptCall(MethodDescriptor, CallOptions, Channel)","u":"interceptCall(io.grpc.MethodDescriptor,io.grpc.CallOptions,io.grpc.Channel)"},{"p":"io.dapr.workflows.client","c":"WorkflowInstanceStatus","l":"isCompleted()"},{"p":"io.dapr.workflows.saga","c":"SagaOption","l":"isContinueWithError()"},{"p":"io.dapr.workflows.saga","c":"SagaOption","l":"isParallelCompensation()"},{"p":"io.dapr.workflows","c":"DaprWorkflowContextImpl","l":"isReplaying()"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"isReplaying()"},{"p":"io.dapr.workflows.client","c":"WorkflowInstanceStatus","l":"isRunning()"},{"p":"io.dapr.workflows","c":"Workflow","l":"isSagaEnabled()"},{"p":"io.dapr.workflows.saga","c":"SagaOption","l":"newBuilder()"},{"p":"io.dapr.workflows","c":"DaprWorkflowContextImpl","l":"newUuid()"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"newUuid()"},{"p":"io.dapr.workflows.client","c":"NewWorkflowOption","l":"NewWorkflowOption()","u":"%3Cinit%3E()"},{"p":"io.dapr.workflows.runtime","c":"WorkflowRuntimeStatus","l":"PENDING"},{"p":"io.dapr.workflows.client","c":"DaprWorkflowClient","l":"purgeInstance(String)","u":"purgeInstance(java.lang.String)"},{"p":"io.dapr.workflows.client","c":"DaprWorkflowClient","l":"raiseEvent(String, String, Object)","u":"raiseEvent(java.lang.String,java.lang.String,java.lang.Object)"},{"p":"io.dapr.workflows.client","c":"WorkflowInstanceStatus","l":"readInputAs(Class)","u":"readInputAs(java.lang.Class)"},{"p":"io.dapr.workflows.client","c":"WorkflowInstanceStatus","l":"readOutputAs(Class)","u":"readOutputAs(java.lang.Class)"},{"p":"io.dapr.workflows.runtime","c":"WorkflowRuntimeBuilder","l":"registerActivity(Class)","u":"registerActivity(java.lang.Class)"},{"p":"io.dapr.workflows.saga","c":"DaprSagaContextImpl","l":"registerCompensation(String, Object)","u":"registerCompensation(java.lang.String,java.lang.Object)"},{"p":"io.dapr.workflows.saga","c":"Saga","l":"registerCompensation(String, Object)","u":"registerCompensation(java.lang.String,java.lang.Object)"},{"p":"io.dapr.workflows.saga","c":"SagaContext","l":"registerCompensation(String, Object)","u":"registerCompensation(java.lang.String,java.lang.Object)"},{"p":"io.dapr.workflows.saga","c":"Saga","l":"registerCompensation(String, Object, TaskOptions)","u":"registerCompensation(java.lang.String,java.lang.Object,com.microsoft.durabletask.TaskOptions)"},{"p":"io.dapr.workflows.runtime","c":"WorkflowRuntimeBuilder","l":"registerWorkflow(Class)","u":"registerWorkflow(java.lang.Class)"},{"p":"io.dapr.workflows.runtime","c":"WorkflowActivity","l":"run(WorkflowActivityContext)","u":"run(io.dapr.workflows.runtime.WorkflowActivityContext)"},{"p":"io.dapr.workflows","c":"Workflow","l":"run(WorkflowContext)","u":"run(io.dapr.workflows.WorkflowContext)"},{"p":"io.dapr.workflows","c":"WorkflowStub","l":"run(WorkflowContext)","u":"run(io.dapr.workflows.WorkflowContext)"},{"p":"io.dapr.workflows.runtime","c":"WorkflowRuntimeStatus","l":"RUNNING"},{"p":"io.dapr.workflows.saga","c":"Saga","l":"Saga(SagaOption)","u":"%3Cinit%3E(io.dapr.workflows.saga.SagaOption)"},{"p":"io.dapr.workflows.saga","c":"SagaCompensationException","l":"SagaCompensationException(String, Exception)","u":"%3Cinit%3E(java.lang.String,java.lang.Exception)"},{"p":"io.dapr.workflows.client","c":"DaprWorkflowClient","l":"scheduleNewWorkflow(Class)","u":"scheduleNewWorkflow(java.lang.Class)"},{"p":"io.dapr.workflows.client","c":"DaprWorkflowClient","l":"scheduleNewWorkflow(Class, NewWorkflowOption)","u":"scheduleNewWorkflow(java.lang.Class,io.dapr.workflows.client.NewWorkflowOption)"},{"p":"io.dapr.workflows.client","c":"DaprWorkflowClient","l":"scheduleNewWorkflow(Class, Object)","u":"scheduleNewWorkflow(java.lang.Class,java.lang.Object)"},{"p":"io.dapr.workflows.client","c":"DaprWorkflowClient","l":"scheduleNewWorkflow(Class, Object, String)","u":"scheduleNewWorkflow(java.lang.Class,java.lang.Object,java.lang.String)"},{"p":"io.dapr.workflows.saga","c":"SagaOption.Builder","l":"setContinueWithError(boolean)"},{"p":"io.dapr.workflows.client","c":"NewWorkflowOption","l":"setInput(Object)","u":"setInput(java.lang.Object)"},{"p":"io.dapr.workflows.client","c":"NewWorkflowOption","l":"setInstanceId(String)","u":"setInstanceId(java.lang.String)"},{"p":"io.dapr.workflows.saga","c":"SagaOption.Builder","l":"setMaxParallelThread(int)"},{"p":"io.dapr.workflows.saga","c":"SagaOption.Builder","l":"setParallelCompensation(boolean)"},{"p":"io.dapr.workflows.client","c":"NewWorkflowOption","l":"setStartTime(Instant)","u":"setStartTime(java.time.Instant)"},{"p":"io.dapr.workflows.client","c":"NewWorkflowOption","l":"setVersion(String)","u":"setVersion(java.lang.String)"},{"p":"io.dapr.workflows.runtime","c":"WorkflowRuntime","l":"start()"},{"p":"io.dapr.workflows.runtime","c":"WorkflowRuntime","l":"start(boolean)"},{"p":"io.dapr.workflows.runtime","c":"WorkflowRuntimeStatus","l":"SUSPENDED"},{"p":"io.dapr.workflows.runtime","c":"WorkflowRuntimeStatus","l":"TERMINATED"},{"p":"io.dapr.workflows.client","c":"DaprWorkflowClient","l":"terminateWorkflow(String, Object)","u":"terminateWorkflow(java.lang.String,java.lang.Object)"},{"p":"io.dapr.workflows.runtime","c":"WorkflowRuntimeStatus","l":"toOrchestrationRuntimeStatus(List)","u":"toOrchestrationRuntimeStatus(java.util.List)"},{"p":"io.dapr.workflows.runtime","c":"WorkflowRuntimeStatus","l":"toOrchestrationRuntimeStatus(WorkflowRuntimeStatus)","u":"toOrchestrationRuntimeStatus(io.dapr.workflows.runtime.WorkflowRuntimeStatus)"},{"p":"io.dapr.workflows.client","c":"WorkflowFailureDetails","l":"toString()"},{"p":"io.dapr.workflows.client","c":"WorkflowInstanceStatus","l":"toString()"},{"p":"io.dapr.workflows.runtime","c":"WorkflowRuntimeStatus","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"io.dapr.workflows.runtime","c":"WorkflowRuntimeStatus","l":"values()"},{"p":"io.dapr.workflows","c":"DaprWorkflowContextImpl","l":"waitForExternalEvent(String)","u":"waitForExternalEvent(java.lang.String)"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"waitForExternalEvent(String)","u":"waitForExternalEvent(java.lang.String)"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"waitForExternalEvent(String, Class)","u":"waitForExternalEvent(java.lang.String,java.lang.Class)"},{"p":"io.dapr.workflows","c":"DaprWorkflowContextImpl","l":"waitForExternalEvent(String, Duration)","u":"waitForExternalEvent(java.lang.String,java.time.Duration)"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"waitForExternalEvent(String, Duration)","u":"waitForExternalEvent(java.lang.String,java.time.Duration)"},{"p":"io.dapr.workflows","c":"DaprWorkflowContextImpl","l":"waitForExternalEvent(String, Duration, Class)","u":"waitForExternalEvent(java.lang.String,java.time.Duration,java.lang.Class)"},{"p":"io.dapr.workflows","c":"WorkflowContext","l":"waitForExternalEvent(String, Duration, Class)","u":"waitForExternalEvent(java.lang.String,java.time.Duration,java.lang.Class)"},{"p":"io.dapr.workflows.client","c":"DaprWorkflowClient","l":"waitForInstanceCompletion(String, Duration, boolean)","u":"waitForInstanceCompletion(java.lang.String,java.time.Duration,boolean)"},{"p":"io.dapr.workflows.client","c":"DaprWorkflowClient","l":"waitForInstanceStart(String, Duration, boolean)","u":"waitForInstanceStart(java.lang.String,java.time.Duration,boolean)"},{"p":"io.dapr.workflows","c":"Workflow","l":"Workflow()","u":"%3Cinit%3E()"},{"p":"io.dapr.workflows.runtime","c":"WorkflowActivityContext","l":"WorkflowActivityContext(TaskActivityContext)","u":"%3Cinit%3E(com.microsoft.durabletask.TaskActivityContext)"},{"p":"io.dapr.workflows.client","c":"WorkflowFailureDetails","l":"WorkflowFailureDetails(FailureDetails)","u":"%3Cinit%3E(com.microsoft.durabletask.FailureDetails)"},{"p":"io.dapr.workflows.client","c":"WorkflowInstanceStatus","l":"WorkflowInstanceStatus(OrchestrationMetadata)","u":"%3Cinit%3E(com.microsoft.durabletask.OrchestrationMetadata)"},{"p":"io.dapr.workflows.runtime","c":"WorkflowRuntime","l":"WorkflowRuntime(DurableTaskGrpcWorker)","u":"%3Cinit%3E(com.microsoft.durabletask.DurableTaskGrpcWorker)"},{"p":"io.dapr.workflows.runtime","c":"WorkflowRuntimeBuilder","l":"WorkflowRuntimeBuilder()","u":"%3Cinit%3E()"}];updateSearchResults(); \ No newline at end of file diff --git a/docs/index-all.html b/docs/index-all.html index 4bcaa95f1..6392e3202 100644 --- a/docs/index-all.html +++ b/docs/index-all.html @@ -2097,38 +2097,38 @@

    C

     
    callSubWorkflow(String) - Method in interface io.dapr.workflows.WorkflowContext
    -
    Asynchronously invokes another workflow as a sub-workflow and returns a Task that completes - when the sub-workflow completes.
    +
    Asynchronously invokes another workflow as a child-workflow and returns a Task that completes + when the child-workflow completes.
    callSubWorkflow(String, Object) - Method in interface io.dapr.workflows.WorkflowContext
    -
    Asynchronously invokes another workflow as a sub-workflow and returns a Task that completes - when the sub-workflow completes.
    +
    Asynchronously invokes another workflow as a child-workflow and returns a Task that completes + when the child-workflow completes.
    callSubWorkflow(String, Object, Class<V>) - Method in interface io.dapr.workflows.WorkflowContext
    -
    Asynchronously invokes another workflow as a sub-workflow and returns a Task that completes - when the sub-workflow completes.
    +
    Asynchronously invokes another workflow as a child-workflow and returns a Task that completes + when the child-workflow completes.
    callSubWorkflow(String, Object, String, TaskOptions) - Method in interface io.dapr.workflows.WorkflowContext
    -
    Asynchronously invokes another workflow as a sub-workflow and returns a Task that completes - when the sub-workflow completes.
    +
    Asynchronously invokes another workflow as a child-workflow and returns a Task that completes + when the child-workflow completes.
    callSubWorkflow(String, Object, String, TaskOptions, Class<V>) - Method in class io.dapr.workflows.DaprWorkflowContextImpl
    -
    Asynchronously invokes another workflow as a sub-workflow and returns a Task that completes - when the sub-workflow completes.
    +
    Asynchronously invokes another workflow as a child-workflow and returns a Task that completes + when the child-workflow completes.
    callSubWorkflow(String, Object, String, TaskOptions, Class<V>) - Method in interface io.dapr.workflows.WorkflowContext
    -
    Asynchronously invokes another workflow as a sub-workflow and returns a Task that completes - when the sub-workflow completes.
    +
    Asynchronously invokes another workflow as a child-workflow and returns a Task that completes + when the child-workflow completes.
    callSubWorkflow(String, Object, String, Class<V>) - Method in interface io.dapr.workflows.WorkflowContext
    -
    Asynchronously invokes another workflow as a sub-workflow and returns a Task that completes - when the sub-workflow completes.
    +
    Asynchronously invokes another workflow as a child-workflow and returns a Task that completes + when the child-workflow completes.
    CANCELED - Enum constant in enum class io.dapr.workflows.runtime.WorkflowRuntimeStatus
    diff --git a/docs/io/dapr/workflows/DaprWorkflowContextImpl.html b/docs/io/dapr/workflows/DaprWorkflowContextImpl.html index 2fa6b06c2..5320452bc 100644 --- a/docs/io/dapr/workflows/DaprWorkflowContextImpl.html +++ b/docs/io/dapr/workflows/DaprWorkflowContextImpl.html @@ -154,8 +154,8 @@

    Method Summary

    com.microsoft.durabletask.TaskOptions options, Class<V> returnType)
    -
    Asynchronously invokes another workflow as a sub-workflow and returns a Task that completes - when the sub-workflow completes.
    +
    Asynchronously invokes another workflow as a child-workflow and returns a Task that completes + when the child-workflow completes.
    void
    complete(Object output)
    @@ -646,16 +646,16 @@

    callSubWorkflow

    @Nullable com.microsoft.durabletask.TaskOptions options, Class<V> returnType) -
    Asynchronously invokes another workflow as a sub-workflow and returns a Task that completes - when the sub-workflow completes. If the sub-workflow completes successfully, the returned - Task's value will be the activity's output. If the sub-workflow fails, the returned Task +
    Asynchronously invokes another workflow as a child-workflow and returns a Task that completes + when the child-workflow completes. If the child-workflow completes successfully, the returned + Task's value will be the activity's output. If the child-workflow fails, the returned Task will complete exceptionally with a TaskFailedException. -

    A sub-workflow has its own instance ID, history, and status that is independent of the parent workflow - that started it. There are many advantages to breaking down large orchestrations into sub-workflows: +

    A child-workflow has its own instance ID, history, and status that is independent of the parent workflow + that started it. There are many advantages to breaking down large orchestrations into child-workflows:

    • - Splitting large orchestrations into a series of smaller sub-workflows can make code more maintainable. + Splitting large orchestrations into a series of smaller child-workflows can make code more maintainable.
    • Distributing orchestration logic across multiple compute nodes concurrently is useful if @@ -665,25 +665,25 @@

      callSubWorkflow

      Memory usage and CPU overhead can be reduced by keeping the history of parent orchestrations smaller.
    - The disadvantage is that there is overhead associated with starting a sub-workflow and processing its + The disadvantage is that there is overhead associated with starting a child-workflow and processing its output. This is typically only an issue for very small orchestrations. -

    Because sub-workflows are independent of their parents, terminating a parent orchestration does not affect - any sub-workflows. sub-workflows must be terminated independently using their unique instance ID, +

    Because child-workflows are independent of their parents, terminating a parent orchestration does not affect + any child-workflows. child-workflows must be terminated independently using their unique instance ID, which is specified using the instanceID parameter

    Specified by:
    callSubWorkflow in interface WorkflowContext
    Type Parameters:
    -
    V - the expected type of the sub-workflow output
    +
    V - the expected type of the child-workflow output
    Parameters:
    name - the name of the workflow to invoke
    -
    input - the serializable input to send to the sub-workflow
    -
    instanceID - the unique ID of the sub-workflow
    +
    input - the serializable input to send to the child-workflow
    +
    instanceID - the unique ID of the child-workflow
    options - additional options that control the execution and processing of the activity
    -
    returnType - the expected class type of the sub-workflow output
    +
    returnType - the expected class type of the child-workflow output
    Returns:
    -
    a new Task that completes when the sub-workflow completes or fails
    +
    a new Task that completes when the child-workflow completes or fails
    diff --git a/docs/io/dapr/workflows/WorkflowContext.html b/docs/io/dapr/workflows/WorkflowContext.html index 7a99549f9..ef48f8c60 100644 --- a/docs/io/dapr/workflows/WorkflowContext.html +++ b/docs/io/dapr/workflows/WorkflowContext.html @@ -159,53 +159,53 @@

    Method Summary

    value will be the activity's output.
    default com.microsoft.durabletask.Task<Void>
    - +
    -
    Asynchronously invokes another workflow as a sub-workflow and returns a Task that completes - when the sub-workflow completes.
    +
    Asynchronously invokes another workflow as a child-workflow and returns a Task that completes + when the child-workflow completes.
    default com.microsoft.durabletask.Task<Void>
    -
    callSubWorkflow(String name, +
    -
    Asynchronously invokes another workflow as a sub-workflow and returns a Task that completes - when the sub-workflow completes.
    +
    Asynchronously invokes another workflow as a child-workflow and returns a Task that completes + when the child-workflow completes.
    default <V> com.microsoft.durabletask.Task<V>
    -
    callSubWorkflow(String name, +
    callChildWorkflow(String name, Object input, Class<V> returnType)
    -
    Asynchronously invokes another workflow as a sub-workflow and returns a Task that completes - when the sub-workflow completes.
    +
    Asynchronously invokes another workflow as a child-workflow and returns a Task that completes + when the child-workflow completes.
    default com.microsoft.durabletask.Task<Void>
    -
    callSubWorkflow(String name, +
    callChildWorkflow(String name, Object input, String instanceID, com.microsoft.durabletask.TaskOptions options)
    -
    Asynchronously invokes another workflow as a sub-workflow and returns a Task that completes - when the sub-workflow completes.
    +
    Asynchronously invokes another workflow as a child-workflow and returns a Task that completes + when the child-workflow completes.
    <V> com.microsoft.durabletask.Task<V>
    -
    callSubWorkflow(String name, +
    callChildWorkflow(String name, Object input, String instanceID, com.microsoft.durabletask.TaskOptions options, Class<V> returnType)
    -
    Asynchronously invokes another workflow as a sub-workflow and returns a Task that completes - when the sub-workflow completes.
    +
    Asynchronously invokes another workflow as a child-workflow and returns a Task that completes + when the child-workflow completes.
    default <V> com.microsoft.durabletask.Task<V>
    -
    callSubWorkflow(String name, +
    callChildWorkflow(String name, Object input, String instanceID, Class<V> returnType)
    -
    Asynchronously invokes another workflow as a sub-workflow and returns a Task that completes - when the sub-workflow completes.
    +
    Asynchronously invokes another workflow as a child-workflow and returns a Task that completes + when the child-workflow completes.
    void
    complete(Object output)
    @@ -764,117 +764,117 @@

    getInput

  • -
    -

    callSubWorkflow

    -
    default com.microsoft.durabletask.Task<Void> callSubWorkflow(String name)
    -
    Asynchronously invokes another workflow as a sub-workflow and returns a Task that completes - when the sub-workflow completes. +
    +

    callChildWorkflow

    +
    default com.microsoft.durabletask.Task<Void> callChildWorkflow(String name)
    +
    Asynchronously invokes another workflow as a child-workflow and returns a Task that completes + when the child-workflow completes. -

    See callSubWorkflow(String, Object, String, TaskOptions, Class) for a full description.

    +

    See callChildWorkflow(String, Object, String, TaskOptions, Class) for a full description.

    Parameters:
    name - the name of the workflow to invoke
    Returns:
    -
    a new Task that completes when the sub-workflow completes or fails
    +
    a new Task that completes when the child-workflow completes or fails
    See Also:
  • -
    -

    callSubWorkflow

    -
    default com.microsoft.durabletask.Task<Void> callSubWorkflow(String name, +
    +

    callChildWorkflow

    +
    default com.microsoft.durabletask.Task<Void> callChildWorkflow(String name, Object input)
    -
    Asynchronously invokes another workflow as a sub-workflow and returns a Task that completes - when the sub-workflow completes. +
    Asynchronously invokes another workflow as a child-workflow and returns a Task that completes + when the child-workflow completes. -

    See callSubWorkflow(String, Object, String, TaskOptions, Class) for a full description.

    +

    See callChildWorkflow(String, Object, String, TaskOptions, Class) for a full description.

    Parameters:
    name - the name of the workflow to invoke
    -
    input - the serializable input to send to the sub-workflow
    +
    input - the serializable input to send to the child-workflow
    Returns:
    -
    a new Task that completes when the sub-workflow completes or fails
    +
    a new Task that completes when the child-workflow completes or fails
  • -
    -

    callSubWorkflow

    -
    default <V> com.microsoft.durabletask.Task<V> callSubWorkflow(String name, +
    +

    callChildWorkflow

    +
    default <V> com.microsoft.durabletask.Task<V> callChildWorkflow(String name, Object input, Class<V> returnType)
    -
    Asynchronously invokes another workflow as a sub-workflow and returns a Task that completes - when the sub-workflow completes. +
    Asynchronously invokes another workflow as a child-workflow and returns a Task that completes + when the child-workflow completes. -

    See callSubWorkflow(String, Object, String, TaskOptions, Class) for a full description.

    +

    See callChildWorkflow(String, Object, String, TaskOptions, Class) for a full description.

    Type Parameters:
    -
    V - the expected type of the sub-workflow output
    +
    V - the expected type of the child-workflow output
    Parameters:
    name - the name of the workflow to invoke
    -
    input - the serializable input to send to the sub-workflow
    -
    returnType - the expected class type of the sub-workflow output
    +
    input - the serializable input to send to the child-workflow
    +
    returnType - the expected class type of the child-workflow output
    Returns:
    -
    a new Task that completes when the sub-workflow completes or fails
    +
    a new Task that completes when the child-workflow completes or fails
  • -
    -

    callSubWorkflow

    -
    default <V> com.microsoft.durabletask.Task<V> callSubWorkflow(String name, +
    +

    callChildWorkflow

    +
    default <V> com.microsoft.durabletask.Task<V> callChildWorkflow(String name, Object input, String instanceID, Class<V> returnType)
    -
    Asynchronously invokes another workflow as a sub-workflow and returns a Task that completes - when the sub-workflow completes. +
    Asynchronously invokes another workflow as a child-workflow and returns a Task that completes + when the child-workflow completes. -

    See callSubWorkflow(String, Object, String, TaskOptions, Class) for a full description.

    +

    See callChildWorkflow(String, Object, String, TaskOptions, Class) for a full description.

    Type Parameters:
    -
    V - the expected type of the sub-workflow output
    +
    V - the expected type of the child-workflow output
    Parameters:
    name - the name of the workflow to invoke
    -
    input - the serializable input to send to the sub-workflow
    -
    instanceID - the unique ID of the sub-workflow
    -
    returnType - the expected class type of the sub-workflow output
    +
    input - the serializable input to send to the child-workflow
    +
    instanceID - the unique ID of the child-workflow
    +
    returnType - the expected class type of the child-workflow output
    Returns:
    -
    a new Task that completes when the sub-workflow completes or fails
    +
    a new Task that completes when the child-workflow completes or fails
  • -
    -

    callSubWorkflow

    -
    default com.microsoft.durabletask.Task<Void> callSubWorkflow(String name, +
    +

    callChildWorkflow

    +
    default com.microsoft.durabletask.Task<Void> callChildWorkflow(String name, Object input, String instanceID, com.microsoft.durabletask.TaskOptions options)
    -
    Asynchronously invokes another workflow as a sub-workflow and returns a Task that completes - when the sub-workflow completes. +
    Asynchronously invokes another workflow as a child-workflow and returns a Task that completes + when the child-workflow completes. -

    See callSubWorkflow(String, Object, String, TaskOptions, Class) for a full description.

    +

    See callChildWorkflow(String, Object, String, TaskOptions, Class) for a full description.

    Parameters:
    name - the name of the workflow to invoke
    -
    input - the serializable input to send to the sub-workflow
    -
    instanceID - the unique ID of the sub-workflow
    +
    input - the serializable input to send to the child-workflow
    +
    instanceID - the unique ID of the child-workflow
    options - additional options that control the execution and processing of the activity
    Returns:
    -
    a new Task that completes when the sub-workflow completes or fails
    +
    a new Task that completes when the child-workflow completes or fails
  • -
    -

    callSubWorkflow

    -
    <V> com.microsoft.durabletask.Task<V> callSubWorkflow(String name, +
    +

    callChildWorkflow

    +
    <V> com.microsoft.durabletask.Task<V> callChildWorkflow(String name, @Nullable Object input, @Nullable @@ -882,16 +882,16 @@

    callSubWorkflow

    @Nullable com.microsoft.durabletask.TaskOptions options, Class<V> returnType)
    -
    Asynchronously invokes another workflow as a sub-workflow and returns a Task that completes - when the sub-workflow completes. If the sub-workflow completes successfully, the returned - Task's value will be the activity's output. If the sub-workflow fails, the returned Task +
    Asynchronously invokes another workflow as a child-workflow and returns a Task that completes + when the child-workflow completes. If the child-workflow completes successfully, the returned + Task's value will be the activity's output. If the child-workflow fails, the returned Task will complete exceptionally with a TaskFailedException. -

    A sub-workflow has its own instance ID, history, and status that is independent of the parent workflow - that started it. There are many advantages to breaking down large orchestrations into sub-workflows: +

    A child-workflow has its own instance ID, history, and status that is independent of the parent workflow + that started it. There are many advantages to breaking down large orchestrations into child-workflows:

    • - Splitting large orchestrations into a series of smaller sub-workflows can make code more maintainable. + Splitting large orchestrations into a series of smaller child-workflows can make code more maintainable.
    • Distributing orchestration logic across multiple compute nodes concurrently is useful if @@ -901,23 +901,23 @@

      callSubWorkflow

      Memory usage and CPU overhead can be reduced by keeping the history of parent orchestrations smaller.
    - The disadvantage is that there is overhead associated with starting a sub-workflow and processing its + The disadvantage is that there is overhead associated with starting a child-workflow and processing its output. This is typically only an issue for very small orchestrations. -

    Because sub-workflows are independent of their parents, terminating a parent orchestration does not affect - any sub-workflows. sub-workflows must be terminated independently using their unique instance ID, +

    Because child-workflows are independent of their parents, terminating a parent orchestration does not affect + any child-workflows. child-workflows must be terminated independently using their unique instance ID, which is specified using the instanceID parameter

    Type Parameters:
    -
    V - the expected type of the sub-workflow output
    +
    V - the expected type of the child-workflow output
    Parameters:
    name - the name of the workflow to invoke
    -
    input - the serializable input to send to the sub-workflow
    -
    instanceID - the unique ID of the sub-workflow
    +
    input - the serializable input to send to the child-workflow
    +
    instanceID - the unique ID of the child-workflow
    options - additional options that control the execution and processing of the activity
    -
    returnType - the expected class type of the sub-workflow output
    +
    returnType - the expected class type of the child-workflow output
    Returns:
    -
    a new Task that completes when the sub-workflow completes or fails
    +
    a new Task that completes when the child-workflow completes or fails
  • diff --git a/examples/src/main/java/io/dapr/examples/workflows/README.md b/examples/src/main/java/io/dapr/examples/workflows/README.md index 7dcc0b65d..4cd4c135a 100644 --- a/examples/src/main/java/io/dapr/examples/workflows/README.md +++ b/examples/src/main/java/io/dapr/examples/workflows/README.md @@ -51,7 +51,7 @@ Those examples contain the following workflow patterns: 2. [Fan-out/Fan-in Pattern](#fan-outfan-in-pattern) 3. [Continue As New Pattern](#continue-as-new-pattern) 4. [External Event Pattern](#external-event-pattern) -5. [Sub-workflow Pattern](#sub-workflow-pattern) +5. [child-workflow Pattern](#child-workflow-pattern) ### Chaining Pattern In the chaining pattern, a sequence of activities executes in a specific order. @@ -443,10 +443,10 @@ Started a new external-event model workflow with instance ID: 23410d96-1afe-4698 workflow instance with ID: 23410d96-1afe-4698-9fcd-c01c1e0db255 completed. ``` -### Sub-workflow Pattern -The sub-workflow pattern allows you to call a workflow from another workflow. +### child-workflow Pattern +The child-workflow pattern allows you to call a workflow from another workflow. -The `DemoWorkflow` class defines the workflow. It calls a sub-workflow `DemoSubWorkflow` to do the work. See the code snippet below: +The `DemoWorkflow` class defines the workflow. It calls a child-workflow `DemoChildWorkflow` to do the work. See the code snippet below: ```java public class DemoWorkflow extends Workflow { @Override @@ -454,40 +454,40 @@ public class DemoWorkflow extends Workflow { return ctx -> { ctx.getLogger().info("Starting Workflow: " + ctx.getName()); - var subWorkflowInput = "Hello Dapr Workflow!"; - ctx.getLogger().info("calling subworkflow with input: " + subWorkflowInput); + var childWorkflowInput = "Hello Dapr Workflow!"; + ctx.getLogger().info("calling childworkflow with input: " + childWorkflowInput); - var subWorkflowOutput = - ctx.callSubWorkflow(DemoSubWorkflow.class.getName(), subWorkflowInput, String.class).await(); + var childWorkflowOutput = + ctx.callChildWorkflow(DemoChildWorkflow.class.getName(), childWorkflowInput, String.class).await(); - ctx.getLogger().info("subworkflow finished with: " + subWorkflowOutput); + ctx.getLogger().info("childworkflow finished with: " + childWorkflowOutput); }; } } ``` -The `DemoSubWorkflow` class defines the sub-workflow. It call the activity to do the work and returns the result. See the code snippet below: +The `DemoChildWorkflow` class defines the child-workflow. It call the activity to do the work and returns the result. See the code snippet below: ```java -public class DemoSubWorkflow extends Workflow { +public class DemoChildWorkflow extends Workflow { @Override public WorkflowStub create() { return ctx -> { - ctx.getLogger().info("Starting SubWorkflow: " + ctx.getName()); + ctx.getLogger().info("Starting ChildWorkflow: " + ctx.getName()); - var subWorkflowInput = ctx.getInput(String.class); - ctx.getLogger().info("SubWorkflow received input: " + subWorkflowInput); + var childWorkflowInput = ctx.getInput(String.class); + ctx.getLogger().info("ChildWorkflow received input: " + childWorkflowInput); - ctx.getLogger().info("SubWorkflow is calling Activity: " + ReverseActivity.class.getName()); - String result = ctx.callActivity(ReverseActivity.class.getName(), subWorkflowInput, String.class).await(); + ctx.getLogger().info("ChildWorkflow is calling Activity: " + ReverseActivity.class.getName()); + String result = ctx.callActivity(ReverseActivity.class.getName(), childWorkflowInput, String.class).await(); - ctx.getLogger().info("SubWorkflow finished with: " + result); + ctx.getLogger().info("ChildWorkflow finished with: " + result); ctx.complete(result); }; } } ``` -The `ReverseActivity` class defines the logics for a single acitvity, in this case, it reverses a string. See the code snippet below: +The `ReverseActivity` class defines the logics for a single activity, in this case, it reverses a string. See the code snippet below: ```java public class ReverseActivity implements WorkflowActivity { @Override @@ -513,29 +513,29 @@ Start the workflow and client using the following commands: ex ```sh -dapr run --app-id demoworkflowworker --resources-path ./components/workflows -- java -jar target/dapr-java-sdk-examples-exec.jar io.dapr.examples.workflows.subworkflow.DemoSubWorkflowWorker +dapr run --app-id demoworkflowworker --resources-path ./components/workflows -- java -jar target/dapr-java-sdk-examples-exec.jar io.dapr.examples.workflows.childworkflow.DemoChildWorkflowWorker ``` ```sh -java -jar target/dapr-java-sdk-examples-exec.jar io.dapr.examples.workflows.subworkflow.DemoSubWorkerflowClient +java -jar target/dapr-java-sdk-examples-exec.jar io.dapr.examples.workflows.childworkflow.DemoChildWorkerflowClient ``` The log from worker: ```text -== APP == 2023-11-07 20:08:52,521 {HH:mm:ss.SSS} [main] INFO io.dapr.workflows.WorkflowContext - Starting Workflow: io.dapr.examples.workflows.subworkflow.DemoWorkflow -== APP == 2023-11-07 20:08:52,523 {HH:mm:ss.SSS} [main] INFO io.dapr.workflows.WorkflowContext - calling subworkflow with input: Hello Dapr Workflow! -== APP == 2023-11-07 20:08:52,561 {HH:mm:ss.SSS} [main] INFO io.dapr.workflows.WorkflowContext - Starting SubWorkflow: io.dapr.examples.workflows.subworkflow.DemoSubWorkflow -== APP == 2023-11-07 20:08:52,566 {HH:mm:ss.SSS} [main] INFO io.dapr.workflows.WorkflowContext - SubWorkflow received input: Hello Dapr Workflow! -== APP == 2023-11-07 20:08:52,566 {HH:mm:ss.SSS} [main] INFO io.dapr.workflows.WorkflowContext - SubWorkflow is calling Activity: io.dapr.examples.workflows.subworkflow.ReverseActivity -== APP == 2023-11-07 20:08:52,576 {HH:mm:ss.SSS} [main] INFO i.d.e.w.subworkflow.ReverseActivity - Starting Activity: io.dapr.examples.workflows.subworkflow.ReverseActivity -== APP == 2023-11-07 20:08:52,577 {HH:mm:ss.SSS} [main] INFO i.d.e.w.subworkflow.ReverseActivity - Message Received from input: Hello Dapr Workflow! -== APP == 2023-11-07 20:08:52,577 {HH:mm:ss.SSS} [main] INFO i.d.e.w.subworkflow.ReverseActivity - Sending message to output: !wolfkroW rpaD olleH -== APP == 2023-11-07 20:08:52,596 {HH:mm:ss.SSS} [main] INFO io.dapr.workflows.WorkflowContext - SubWorkflow finished with: !wolfkroW rpaD olleH -== APP == 2023-11-07 20:08:52,611 {HH:mm:ss.SSS} [main] INFO io.dapr.workflows.WorkflowContext - subworkflow finished with: !wolfkroW rpaD olleH +== APP == 2023-11-07 20:08:52,521 {HH:mm:ss.SSS} [main] INFO io.dapr.workflows.WorkflowContext - Starting Workflow: io.dapr.examples.workflows.childworkflow.DemoWorkflow +== APP == 2023-11-07 20:08:52,523 {HH:mm:ss.SSS} [main] INFO io.dapr.workflows.WorkflowContext - calling childworkflow with input: Hello Dapr Workflow! +== APP == 2023-11-07 20:08:52,561 {HH:mm:ss.SSS} [main] INFO io.dapr.workflows.WorkflowContext - Starting ChildWorkflow: io.dapr.examples.workflows.childworkflow.DemoChildWorkflow +== APP == 2023-11-07 20:08:52,566 {HH:mm:ss.SSS} [main] INFO io.dapr.workflows.WorkflowContext - ChildWorkflow received input: Hello Dapr Workflow! +== APP == 2023-11-07 20:08:52,566 {HH:mm:ss.SSS} [main] INFO io.dapr.workflows.WorkflowContext - ChildWorkflow is calling Activity: io.dapr.examples.workflows.childworkflow.ReverseActivity +== APP == 2023-11-07 20:08:52,576 {HH:mm:ss.SSS} [main] INFO i.d.e.w.childworkflow.ReverseActivity - Starting Activity: io.dapr.examples.workflows.childworkflow.ReverseActivity +== APP == 2023-11-07 20:08:52,577 {HH:mm:ss.SSS} [main] INFO i.d.e.w.childworkflow.ReverseActivity - Message Received from input: Hello Dapr Workflow! +== APP == 2023-11-07 20:08:52,577 {HH:mm:ss.SSS} [main] INFO i.d.e.w.childworkflow.ReverseActivity - Sending message to output: !wolfkroW rpaD olleH +== APP == 2023-11-07 20:08:52,596 {HH:mm:ss.SSS} [main] INFO io.dapr.workflows.WorkflowContext - ChildWorkflow finished with: !wolfkroW rpaD olleH +== APP == 2023-11-07 20:08:52,611 {HH:mm:ss.SSS} [main] INFO io.dapr.workflows.WorkflowContext - childworkflow finished with: !wolfkroW rpaD olleH ``` The log from client: ```text -Started a new sub-workflow model workflow with instance ID: c2fb9c83-435b-4b55-bdf1-833b39366cfb +Started a new child-workflow model workflow with instance ID: c2fb9c83-435b-4b55-bdf1-833b39366cfb workflow instance with ID: c2fb9c83-435b-4b55-bdf1-833b39366cfb completed with result: !wolfkroW rpaD olleH ``` \ No newline at end of file diff --git a/examples/src/main/java/io/dapr/examples/workflows/subworkflow/DemoSubWorkerflowClient.java b/examples/src/main/java/io/dapr/examples/workflows/childworkflow/DemoChildWorkerflowClient.java similarity index 88% rename from examples/src/main/java/io/dapr/examples/workflows/subworkflow/DemoSubWorkerflowClient.java rename to examples/src/main/java/io/dapr/examples/workflows/childworkflow/DemoChildWorkerflowClient.java index 7202694ac..139f93e41 100644 --- a/examples/src/main/java/io/dapr/examples/workflows/subworkflow/DemoSubWorkerflowClient.java +++ b/examples/src/main/java/io/dapr/examples/workflows/childworkflow/DemoChildWorkerflowClient.java @@ -11,14 +11,14 @@ limitations under the License. */ -package io.dapr.examples.workflows.subworkflow; +package io.dapr.examples.workflows.childworkflow; import io.dapr.workflows.client.DaprWorkflowClient; import io.dapr.workflows.client.WorkflowInstanceStatus; import java.util.concurrent.TimeoutException; -public class DemoSubWorkerflowClient { +public class DemoChildWorkerflowClient { /** * The main method to start the client. * @@ -28,7 +28,7 @@ public class DemoSubWorkerflowClient { public static void main(String[] args) { try (DaprWorkflowClient client = new DaprWorkflowClient()) { String instanceId = client.scheduleNewWorkflow(DemoWorkflow.class); - System.out.printf("Started a new sub-workflow model workflow with instance ID: %s%n", instanceId); + System.out.printf("Started a new child-workflow model workflow with instance ID: %s%n", instanceId); WorkflowInstanceStatus workflowInstanceStatus = client.waitForInstanceCompletion(instanceId, null, true); diff --git a/examples/src/main/java/io/dapr/examples/workflows/subworkflow/DemoSubWorkflow.java b/examples/src/main/java/io/dapr/examples/workflows/childworkflow/DemoChildWorkflow.java similarity index 60% rename from examples/src/main/java/io/dapr/examples/workflows/subworkflow/DemoSubWorkflow.java rename to examples/src/main/java/io/dapr/examples/workflows/childworkflow/DemoChildWorkflow.java index 72c25575d..0e67496ce 100644 --- a/examples/src/main/java/io/dapr/examples/workflows/subworkflow/DemoSubWorkflow.java +++ b/examples/src/main/java/io/dapr/examples/workflows/childworkflow/DemoChildWorkflow.java @@ -11,24 +11,24 @@ limitations under the License. */ -package io.dapr.examples.workflows.subworkflow; +package io.dapr.examples.workflows.childworkflow; import io.dapr.workflows.Workflow; import io.dapr.workflows.WorkflowStub; -public class DemoSubWorkflow extends Workflow { +public class DemoChildWorkflow extends Workflow { @Override public WorkflowStub create() { return ctx -> { - ctx.getLogger().info("Starting SubWorkflow: " + ctx.getName()); + ctx.getLogger().info("Starting ChildWorkflow: " + ctx.getName()); - var subWorkflowInput = ctx.getInput(String.class); - ctx.getLogger().info("SubWorkflow received input: " + subWorkflowInput); + var childWorkflowInput = ctx.getInput(String.class); + ctx.getLogger().info("ChildWorkflow received input: " + childWorkflowInput); - ctx.getLogger().info("SubWorkflow is calling Activity: " + ReverseActivity.class.getName()); - String result = ctx.callActivity(ReverseActivity.class.getName(), subWorkflowInput, String.class).await(); + ctx.getLogger().info("ChildWorkflow is calling Activity: " + ReverseActivity.class.getName()); + String result = ctx.callActivity(ReverseActivity.class.getName(), childWorkflowInput, String.class).await(); - ctx.getLogger().info("SubWorkflow finished with: " + result); + ctx.getLogger().info("ChildWorkflow finished with: " + result); ctx.complete(result); }; } diff --git a/examples/src/main/java/io/dapr/examples/workflows/subworkflow/DemoSubWorkflowWorker.java b/examples/src/main/java/io/dapr/examples/workflows/childworkflow/DemoChildWorkflowWorker.java similarity index 90% rename from examples/src/main/java/io/dapr/examples/workflows/subworkflow/DemoSubWorkflowWorker.java rename to examples/src/main/java/io/dapr/examples/workflows/childworkflow/DemoChildWorkflowWorker.java index 026a78639..81a9b4973 100644 --- a/examples/src/main/java/io/dapr/examples/workflows/subworkflow/DemoSubWorkflowWorker.java +++ b/examples/src/main/java/io/dapr/examples/workflows/childworkflow/DemoChildWorkflowWorker.java @@ -11,12 +11,12 @@ limitations under the License. */ -package io.dapr.examples.workflows.subworkflow; +package io.dapr.examples.workflows.childworkflow; import io.dapr.workflows.runtime.WorkflowRuntime; import io.dapr.workflows.runtime.WorkflowRuntimeBuilder; -public class DemoSubWorkflowWorker { +public class DemoChildWorkflowWorker { /** * The main method of this app. * @@ -27,7 +27,7 @@ public static void main(String[] args) throws Exception { // Register the Workflow with the builder. WorkflowRuntimeBuilder builder = new WorkflowRuntimeBuilder() .registerWorkflow(DemoWorkflow.class) - .registerWorkflow(DemoSubWorkflow.class); + .registerWorkflow(DemoChildWorkflow.class); builder.registerActivity(ReverseActivity.class); // Build and then start the workflow runtime pulling and executing tasks diff --git a/examples/src/main/java/io/dapr/examples/workflows/subworkflow/DemoWorkflow.java b/examples/src/main/java/io/dapr/examples/workflows/childworkflow/DemoWorkflow.java similarity index 65% rename from examples/src/main/java/io/dapr/examples/workflows/subworkflow/DemoWorkflow.java rename to examples/src/main/java/io/dapr/examples/workflows/childworkflow/DemoWorkflow.java index 0d846006a..74d71bf3b 100644 --- a/examples/src/main/java/io/dapr/examples/workflows/subworkflow/DemoWorkflow.java +++ b/examples/src/main/java/io/dapr/examples/workflows/childworkflow/DemoWorkflow.java @@ -11,7 +11,7 @@ limitations under the License. */ -package io.dapr.examples.workflows.subworkflow; +package io.dapr.examples.workflows.childworkflow; import io.dapr.workflows.Workflow; import io.dapr.workflows.WorkflowStub; @@ -22,14 +22,14 @@ public WorkflowStub create() { return ctx -> { ctx.getLogger().info("Starting Workflow: " + ctx.getName()); - var subWorkflowInput = "Hello Dapr Workflow!"; - ctx.getLogger().info("calling subworkflow with input: " + subWorkflowInput); + var childWorkflowInput = "Hello Dapr Workflow!"; + ctx.getLogger().info("calling childworkflow with input: " + childWorkflowInput); - var subWorkflowOutput = - ctx.callSubWorkflow(DemoSubWorkflow.class.getName(), subWorkflowInput, String.class).await(); + var childWorkflowOutput = + ctx.callChildWorkflow(DemoChildWorkflow.class.getName(), childWorkflowInput, String.class).await(); - ctx.getLogger().info("subworkflow finished with: " + subWorkflowOutput); - ctx.complete(subWorkflowOutput); + ctx.getLogger().info("childworkflow finished with: " + childWorkflowOutput); + ctx.complete(childWorkflowOutput); }; } } diff --git a/examples/src/main/java/io/dapr/examples/workflows/subworkflow/ReverseActivity.java b/examples/src/main/java/io/dapr/examples/workflows/childworkflow/ReverseActivity.java similarity index 96% rename from examples/src/main/java/io/dapr/examples/workflows/subworkflow/ReverseActivity.java rename to examples/src/main/java/io/dapr/examples/workflows/childworkflow/ReverseActivity.java index e231a16ee..ff62fe0d1 100644 --- a/examples/src/main/java/io/dapr/examples/workflows/subworkflow/ReverseActivity.java +++ b/examples/src/main/java/io/dapr/examples/workflows/childworkflow/ReverseActivity.java @@ -11,7 +11,7 @@ limitations under the License. */ -package io.dapr.examples.workflows.subworkflow; +package io.dapr.examples.workflows.childworkflow; import io.dapr.workflows.runtime.WorkflowActivity; import io.dapr.workflows.runtime.WorkflowActivityContext; diff --git a/sdk-workflows/src/main/java/io/dapr/workflows/DaprWorkflowContextImpl.java b/sdk-workflows/src/main/java/io/dapr/workflows/DaprWorkflowContextImpl.java index c6f474d70..3353e385b 100644 --- a/sdk-workflows/src/main/java/io/dapr/workflows/DaprWorkflowContextImpl.java +++ b/sdk-workflows/src/main/java/io/dapr/workflows/DaprWorkflowContextImpl.java @@ -212,7 +212,7 @@ public T getInput(Class targetType) { * {@inheritDoc} */ @Override - public Task callSubWorkflow(String name, @Nullable Object input, @Nullable String instanceID, + public Task callChildWorkflow(String name, @Nullable Object input, @Nullable String instanceID, @Nullable TaskOptions options, Class returnType) { return this.innerContext.callSubOrchestrator(name, input, instanceID, options, returnType); diff --git a/sdk-workflows/src/main/java/io/dapr/workflows/WorkflowContext.java b/sdk-workflows/src/main/java/io/dapr/workflows/WorkflowContext.java index 5315616ff..bc5d53186 100644 --- a/sdk-workflows/src/main/java/io/dapr/workflows/WorkflowContext.java +++ b/sdk-workflows/src/main/java/io/dapr/workflows/WorkflowContext.java @@ -364,93 +364,93 @@ default Task createTimer(ZonedDateTime zonedDateTime) { V getInput(Class targetType); /** - * Asynchronously invokes another workflow as a sub-workflow and returns a {@link Task} that completes - * when the sub-workflow completes. + * Asynchronously invokes another workflow as a child-workflow and returns a {@link Task} that completes + * when the child-workflow completes. * - *

    See {@link #callSubWorkflow(String, Object, String, TaskOptions, Class)} for a full description. + *

    See {@link #callChildWorkflow(String, Object, String, TaskOptions, Class)} for a full description. * * @param name the name of the workflow to invoke - * @return a new {@link Task} that completes when the sub-workflow completes or fails - * @see #callSubWorkflow(String, Object, String, TaskOptions, Class) + * @return a new {@link Task} that completes when the child-workflow completes or fails + * @see #callChildWorkflow(String, Object, String, TaskOptions, Class) */ - default Task callSubWorkflow(String name) { - return this.callSubWorkflow(name, null); + default Task callChildWorkflow(String name) { + return this.callChildWorkflow(name, null); } /** - * Asynchronously invokes another workflow as a sub-workflow and returns a {@link Task} that completes - * when the sub-workflow completes. + * Asynchronously invokes another workflow as a child-workflow and returns a {@link Task} that completes + * when the child-workflow completes. * - *

    See {@link #callSubWorkflow(String, Object, String, TaskOptions, Class)} for a full description. + *

    See {@link #callChildWorkflow(String, Object, String, TaskOptions, Class)} for a full description. * * @param name the name of the workflow to invoke - * @param input the serializable input to send to the sub-workflow - * @return a new {@link Task} that completes when the sub-workflow completes or fails + * @param input the serializable input to send to the child-workflow + * @return a new {@link Task} that completes when the child-workflow completes or fails */ - default Task callSubWorkflow(String name, Object input) { - return this.callSubWorkflow(name, input, null); + default Task callChildWorkflow(String name, Object input) { + return this.callChildWorkflow(name, input, null); } /** - * Asynchronously invokes another workflow as a sub-workflow and returns a {@link Task} that completes - * when the sub-workflow completes. + * Asynchronously invokes another workflow as a child-workflow and returns a {@link Task} that completes + * when the child-workflow completes. * - *

    See {@link #callSubWorkflow(String, Object, String, TaskOptions, Class)} for a full description. + *

    See {@link #callChildWorkflow(String, Object, String, TaskOptions, Class)} for a full description. * * @param name the name of the workflow to invoke - * @param input the serializable input to send to the sub-workflow - * @param returnType the expected class type of the sub-workflow output - * @param the expected type of the sub-workflow output - * @return a new {@link Task} that completes when the sub-workflow completes or fails + * @param input the serializable input to send to the child-workflow + * @param returnType the expected class type of the child-workflow output + * @param the expected type of the child-workflow output + * @return a new {@link Task} that completes when the child-workflow completes or fails */ - default Task callSubWorkflow(String name, Object input, Class returnType) { - return this.callSubWorkflow(name, input, null, returnType); + default Task callChildWorkflow(String name, Object input, Class returnType) { + return this.callChildWorkflow(name, input, null, returnType); } /** - * Asynchronously invokes another workflow as a sub-workflow and returns a {@link Task} that completes - * when the sub-workflow completes. + * Asynchronously invokes another workflow as a child-workflow and returns a {@link Task} that completes + * when the child-workflow completes. * - *

    See {@link #callSubWorkflow(String, Object, String, TaskOptions, Class)} for a full description. + *

    See {@link #callChildWorkflow(String, Object, String, TaskOptions, Class)} for a full description. * * @param name the name of the workflow to invoke - * @param input the serializable input to send to the sub-workflow - * @param instanceID the unique ID of the sub-workflow - * @param returnType the expected class type of the sub-workflow output - * @param the expected type of the sub-workflow output - * @return a new {@link Task} that completes when the sub-workflow completes or fails - */ - default Task callSubWorkflow(String name, Object input, String instanceID, Class returnType) { - return this.callSubWorkflow(name, input, instanceID, null, returnType); + * @param input the serializable input to send to the child-workflow + * @param instanceID the unique ID of the child-workflow + * @param returnType the expected class type of the child-workflow output + * @param the expected type of the child-workflow output + * @return a new {@link Task} that completes when the child-workflow completes or fails + */ + default Task callChildWorkflow(String name, Object input, String instanceID, Class returnType) { + return this.callChildWorkflow(name, input, instanceID, null, returnType); } /** - * Asynchronously invokes another workflow as a sub-workflow and returns a {@link Task} that completes - * when the sub-workflow completes. + * Asynchronously invokes another workflow as a child-workflow and returns a {@link Task} that completes + * when the child-workflow completes. * - *

    See {@link #callSubWorkflow(String, Object, String, TaskOptions, Class)} for a full description. + *

    See {@link #callChildWorkflow(String, Object, String, TaskOptions, Class)} for a full description. * * @param name the name of the workflow to invoke - * @param input the serializable input to send to the sub-workflow - * @param instanceID the unique ID of the sub-workflow + * @param input the serializable input to send to the child-workflow + * @param instanceID the unique ID of the child-workflow * @param options additional options that control the execution and processing of the activity - * @return a new {@link Task} that completes when the sub-workflow completes or fails + * @return a new {@link Task} that completes when the child-workflow completes or fails */ - default Task callSubWorkflow(String name, Object input, String instanceID, TaskOptions options) { - return this.callSubWorkflow(name, input, instanceID, options, Void.class); + default Task callChildWorkflow(String name, Object input, String instanceID, TaskOptions options) { + return this.callChildWorkflow(name, input, instanceID, options, Void.class); } /** - * Asynchronously invokes another workflow as a sub-workflow and returns a {@link Task} that completes - * when the sub-workflow completes. If the sub-workflow completes successfully, the returned - * {@code Task}'s value will be the activity's output. If the sub-workflow fails, the returned {@code Task} + * Asynchronously invokes another workflow as a child-workflow and returns a {@link Task} that completes + * when the child-workflow completes. If the child-workflow completes successfully, the returned + * {@code Task}'s value will be the activity's output. If the child-workflow fails, the returned {@code Task} * will complete exceptionally with a {@link TaskFailedException}. * - *

    A sub-workflow has its own instance ID, history, and status that is independent of the parent workflow - * that started it. There are many advantages to breaking down large orchestrations into sub-workflows: + *

    A child-workflow has its own instance ID, history, and status that is independent of the parent workflow + * that started it. There are many advantages to breaking down large orchestrations into child-workflows: *

      *
    • - * Splitting large orchestrations into a series of smaller sub-workflows can make code more maintainable. + * Splitting large orchestrations into a series of smaller child-workflows can make code more maintainable. *
    • *
    • * Distributing orchestration logic across multiple compute nodes concurrently is useful if @@ -460,22 +460,22 @@ default Task callSubWorkflow(String name, Object input, String instanceID, * Memory usage and CPU overhead can be reduced by keeping the history of parent orchestrations smaller. *
    • *
    - * The disadvantage is that there is overhead associated with starting a sub-workflow and processing its + * The disadvantage is that there is overhead associated with starting a child-workflow and processing its * output. This is typically only an issue for very small orchestrations. * - *

    Because sub-workflows are independent of their parents, terminating a parent orchestration does not affect - * any sub-workflows. sub-workflows must be terminated independently using their unique instance ID, + *

    Because child-workflows are independent of their parents, terminating a parent orchestration does not affect + * any child-workflows. child-workflows must be terminated independently using their unique instance ID, * which is specified using the {@code instanceID} parameter * * @param name the name of the workflow to invoke - * @param input the serializable input to send to the sub-workflow - * @param instanceID the unique ID of the sub-workflow + * @param input the serializable input to send to the child-workflow + * @param instanceID the unique ID of the child-workflow * @param options additional options that control the execution and processing of the activity - * @param returnType the expected class type of the sub-workflow output - * @param the expected type of the sub-workflow output - * @return a new {@link Task} that completes when the sub-workflow completes or fails + * @param returnType the expected class type of the child-workflow output + * @param the expected type of the child-workflow output + * @return a new {@link Task} that completes when the child-workflow completes or fails */ - Task callSubWorkflow(String name, + Task callChildWorkflow(String name, @Nullable Object input, @Nullable String instanceID, @Nullable TaskOptions options, diff --git a/sdk-workflows/src/test/java/io/dapr/workflows/DaprWorkflowContextImplTest.java b/sdk-workflows/src/test/java/io/dapr/workflows/DaprWorkflowContextImplTest.java index 3ea03ddbb..34a6a5d6c 100644 --- a/sdk-workflows/src/test/java/io/dapr/workflows/DaprWorkflowContextImplTest.java +++ b/sdk-workflows/src/test/java/io/dapr/workflows/DaprWorkflowContextImplTest.java @@ -125,7 +125,7 @@ public V getInput(Class targetType) { } @Override - public Task callSubWorkflow(String name, @Nullable Object input, @Nullable String instanceID, + public Task callChildWorkflow(String name, @Nullable Object input, @Nullable String instanceID, @Nullable TaskOptions options, Class returnType) { return null; } @@ -278,31 +278,31 @@ public void createTimerWithZonedDateTimeThrowsTest() { } @Test - public void callSubWorkflowWithName() { + public void callChildWorkflowWithName() { String expectedName = "TestActivity"; - context.callSubWorkflow(expectedName); + context.callChildWorkflow(expectedName); verify(mockInnerContext, times(1)).callSubOrchestrator(expectedName, null, null, null, null); } @Test - public void callSubWorkflowWithOptions() { + public void callChildWorkflowWithOptions() { String expectedName = "TestActivity"; String expectedInput = "TestInput"; String expectedInstanceId = "TestInstanceId"; TaskOptions expectedOptions = new TaskOptions(new RetryPolicy(1, Duration.ofSeconds(10))); - context.callSubWorkflow(expectedName, expectedInput, expectedInstanceId, expectedOptions, String.class); + context.callChildWorkflow(expectedName, expectedInput, expectedInstanceId, expectedOptions, String.class); verify(mockInnerContext, times(1)).callSubOrchestrator(expectedName, expectedInput, expectedInstanceId, expectedOptions, String.class); } @Test - public void callSubWorkflow() { + public void callChildWorkflow() { String expectedName = "TestActivity"; String expectedInput = "TestInput"; - context.callSubWorkflow(expectedName, expectedInput, String.class); + context.callChildWorkflow(expectedName, expectedInput, String.class); verify(mockInnerContext, times(1)).callSubOrchestrator(expectedName, expectedInput, null, null, String.class); }