temporal-clojure-sdk icon indicating copy to clipboard operation
temporal-clojure-sdk copied to clipboard

add child workflow implementation

Open mintybayleaf opened this issue 1 year ago • 0 comments

Add the implementation for Child Workflows to the Temporal Clojure SDK

Why?

Child Workflows are a key feature in separating out Workflow execution histories and physically preventing two of the same workflow execution from being spawned if uniqueness needs to be guaranteed.

What?

  • I reused the invoke logic for the activities and added an invoke function to the workflow namespace
  • I added a internal/child_workflows for building the ChildWorkflowOptions
  • Added tests for regular child workflows, concurrent parent/child workflows, and async activities inside child workflows
  • I added a documentation page for child workflows.

How?

For more information look at these links:

  • https://docs.temporal.io/dev-guide/java/features#child-workflows
  • https://docs.temporal.io/encyclopedia/child-workflows

TODOS: Test against a live Temporal cluster more

Let me know if you have any questions and concerns

mintybayleaf avatar May 16 '24 20:05 mintybayleaf