final case class ZWorkflowOptions extends Product with Serializable

Options used to configure how a workflow is executed.

Linear Supertypes
Serializable, Product, Equals, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. ZWorkflowOptions
  2. Serializable
  3. Product
  4. Equals
  5. AnyRef
  6. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @IntrinsicCandidate() @native()
  6. val contextPropagators: List[ContextPropagator]
  7. val disableEagerExecution: Option[Boolean]
  8. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  9. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @IntrinsicCandidate() @native()
  10. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  11. val memo: Map[String, AnyRef]
  12. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  13. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @IntrinsicCandidate() @native()
  14. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @IntrinsicCandidate() @native()
  15. def productElementNames: Iterator[String]
    Definition Classes
    Product
  16. val retryOptions: Option[ZRetryOptions]
  17. val searchAttributes: Option[ZSearchAttributes]
  18. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  19. val taskQueue: String
  20. def toJava: WorkflowOptions

    Convert to Java SDK's WorkflowOptions

  21. def toString(): String
    Definition Classes
    ZWorkflowOptions → AnyRef → Any
  22. def transformJavaOptions(f: (Builder) => Builder): ZWorkflowOptions

    Allows to specify options directly on the java SDK's WorkflowOptions.

    Allows to specify options directly on the java SDK's WorkflowOptions. Use it in case an appropriate withXXX method is missing

    Note

    the options specified via this method take precedence over those specified via other methods.

  23. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  24. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  25. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  26. def withContextPropagators(values: List[ContextPropagator]): ZWorkflowOptions

    This list of context propagators overrides the list specified on ZWorkflowClientOptions.contextPropagators.

    This list of context propagators overrides the list specified on ZWorkflowClientOptions.contextPropagators.
    This method is uncommon, the majority of users should just set ZWorkflowClientOptions.contextPropagators

    values

    specifies the list of overriding context propagators

  27. def withContextPropagators(values: ContextPropagator*): ZWorkflowOptions

    This list of context propagators overrides the list specified on ZWorkflowClientOptions.contextPropagators.

    This list of context propagators overrides the list specified on ZWorkflowClientOptions.contextPropagators.
    This method is uncommon, the majority of users should just set ZWorkflowClientOptions.contextPropagators

    values

    specifies the list of overriding context propagators

  28. def withDisableEagerExecution(value: Boolean): ZWorkflowOptions

    If ZWorkflowClient is used to create a zio.temporal.worker.ZWorkerFactory that is

    If ZWorkflowClient is used to create a zio.temporal.worker.ZWorkerFactory that is

    • started
    • has a non-paused worker on the right task queue
    • has available workflow task executor slots

    and such a ZWorkflowClient is used to start a workflow, then the first workflow task could be dispatched on this local worker with the response to the start call if Server supports it. This option can be used to disable this mechanism.

    value

    if true, an eager local execution of the workflow task will never be requested even if it is possible.

  29. def withMemo(values: Map[String, AnyRef]): ZWorkflowOptions

    Specifies additional non-indexed information in result of list workflow.

    Specifies additional non-indexed information in result of list workflow. The type of value can be any object that are serializable by io.temporal.common.converter.DataConverter

  30. def withMemo(values: (String, AnyRef)*): ZWorkflowOptions

    Specifies additional non-indexed information in result of list workflow.

    Specifies additional non-indexed information in result of list workflow. The type of value can be any object that are serializable by io.temporal.common.converter.DataConverter

  31. def withRetryOptions(options: ZRetryOptions): ZWorkflowOptions

    Specifies retry optiosn for this workflow

  32. def withSearchAttributes(values: ZSearchAttributes): ZWorkflowOptions

    Specifies Search Attributes that will be attached to the Workflow.

    Specifies Search Attributes that will be attached to the Workflow. Search Attributes are additional indexed information attributed to workflow and used for search and visibility.

    The search attributes can be used in query of List/Scan/Count workflow APIs. The key and its value type must be registered on Temporal server side.

  33. def withSearchAttributes(values: Map[String, ZSearchAttribute]): ZWorkflowOptions

    Specifies Search Attributes that will be attached to the Workflow.

    Specifies Search Attributes that will be attached to the Workflow. Search Attributes are additional indexed information attributed to workflow and used for search and visibility.

    The search attributes can be used in query of List/Scan/Count workflow APIs. The key and its value type must be registered on Temporal server side.

  34. def withTaskQueue(value: String): ZWorkflowOptions

    Task queue to use for workflow tasks.

    Task queue to use for workflow tasks. It should match a task queue specified when creating a zio.temporal.worker.ZWorker that hosts the workflow code.

  35. def withWorkflowExecutionTimeout(timeout: zio.Duration): ZWorkflowOptions

    The time after which workflow execution (which includes run retries and continue as new) is automatically terminated by Temporal service with WORKFLOW_EXECUTION_TIMED_OUT status.

    The time after which workflow execution (which includes run retries and continue as new) is automatically terminated by Temporal service with WORKFLOW_EXECUTION_TIMED_OUT status.

    When a workflow reaches Workflow Execution Timeout, it can't make any progress after that. Do not rely on this timeout in workflow implementation or business logic. This timeout is not designed to be handled in workflow code to perform any logic in case of timeout. Consider using workflow timers instead.

    If you catch yourself setting this timeout to very small values, you're likely using it wrong.

    Example: If Workflow Execution Timeout is 30 seconds and the network was unavailable for 1 minute, workflows that were scheduled before the network blip will never have a chance to make progress or react, and will be terminated.
    A timer that is scheduled in the workflow code using ZWorkflow.newTimer will handle this situation gracefully. A workflow with such a timer will start after the network blip. If it started before the network blip and the timer fires during the network blip, it will get delivered after connectivity is restored and the workflow will be able to resume.

  36. def withWorkflowId(value: String): ZWorkflowOptions

    Workflow id to use when starting.

    Workflow id to use when starting. Prefer assigning business meaningful ids if possible.

  37. def withWorkflowIdReusePolicy(value: WorkflowIdReusePolicy): ZWorkflowOptions

    Specifies server behavior if a completed workflow with the same id exists.

    Specifies server behavior if a completed workflow with the same id exists. Note that under no conditions Temporal allows two workflows with the same namespace and workflow id run simultaneously.

    Default value if not set: AllowDuplicate

    • AllowDuplicate allows a new run regardless of the previous run's final status. The previous run still must be closed or the new run will be rejected.
    • AllowDuplicateFailedOnly allows a new run if the previous run failed, was canceled, or terminated.
    • RejectDuplicate never allows a new run, regardless of the previous run's final status.
    • TerminateIfRunning is the same as AllowDuplicate, but if there exists a not-closed run in progress, it will be terminated.
  38. def withWorkflowRunTimeout(timeout: zio.Duration): ZWorkflowOptions

    The time after which a workflow run is automatically terminated by Temporal service with WORKFLOW_EXECUTION_TIMED_OUT status.

    The time after which a workflow run is automatically terminated by Temporal service with WORKFLOW_EXECUTION_TIMED_OUT status.

    When a workflow reaches Workflow Run Timeout, it can't make any progress after that. Do not rely on this timeout in workflow implementation or business logic. This timeout is not designed to be handled in workflow code to perform any logic in case of timeout. Consider using workflow timers instead.

    If you catch yourself setting this timeout to very small values, you're likely using it wrong.

    Example: If Workflow Run Timeout is 30 seconds and the network was unavailable for 1 minute, workflows that were scheduled before the network blip will never have a chance to make progress or react, and will be terminated.
    A timer that is scheduled in the workflow code using ZWorkflow.newTimer will handle this situation gracefully. A workflow with such a timer will start after the network blip. If it started before the network blip and the timer fires during the network blip, it will get delivered after connectivity is restored and the workflow will be able to resume.

  39. def withWorkflowTaskTimeout(timeout: zio.Duration): ZWorkflowOptions

    Maximum execution time of a single Workflow Task.

    Maximum execution time of a single Workflow Task. In the majority of cases there is no need to change this timeout. Note that this timeout is not related to the overall Workflow duration in any way. It defines for how long the Workflow can get blocked in the case of a Workflow Worker crash.

    Default is 10 seconds. Maximum value allowed by the Temporal Server is 1 minute.

  40. val workflowExecutionTimeout: Option[zio.Duration]
  41. val workflowId: String
  42. val workflowIdReusePolicy: Option[WorkflowIdReusePolicy]
  43. val workflowRunTimeout: Option[zio.Duration]
  44. val workflowTaskTimeout: Option[zio.Duration]

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable]) @Deprecated
    Deprecated

    (Since version 9)

Inherited from Serializable

Inherited from Product

Inherited from Equals

Inherited from AnyRef

Inherited from Any

Ungrouped