Class: Temporalio::Workflow::IDReusePolicy

Inherits:
Object
  • Object
show all
Defined in:
lib/temporalio/workflow/id_reuse_policy.rb

Overview

How already-in-use workflow IDs are handled on start.

Constant Summary collapse

POLICIES =
[
  ALLOW_DUPLICATE = :ALLOW_DUPLICATE,
  ALLOW_DUPLICATE_FAILED_ONLY = :ALLOW_DUPLICATE_FAILED_ONLY,
  REJECT_DUPLICATE = :REJECT_DUPLICATE,
  TERMINATE_IF_RUNNING = :TERMINATE_IF_RUNNING,
].freeze
API_MAP =
{
  Temporalio::Api::Enums::V1::WorkflowIdReusePolicy::WORKFLOW_ID_REUSE_POLICY_ALLOW_DUPLICATE =>
    ALLOW_DUPLICATE,
  Temporalio::Api::Enums::V1::WorkflowIdReusePolicy::WORKFLOW_ID_REUSE_POLICY_ALLOW_DUPLICATE_FAILED_ONLY =>
    ALLOW_DUPLICATE_FAILED_ONLY,
  Temporalio::Api::Enums::V1::WorkflowIdReusePolicy::WORKFLOW_ID_REUSE_POLICY_REJECT_DUPLICATE =>
    REJECT_DUPLICATE,
  Temporalio::Api::Enums::V1::WorkflowIdReusePolicy::WORKFLOW_ID_REUSE_POLICY_TERMINATE_IF_RUNNING =>
    TERMINATE_IF_RUNNING,
}.freeze

Class Method Summary collapse

Class Method Details

.from_raw(raw_policy) ⇒ Object



31
32
33
# File 'lib/temporalio/workflow/id_reuse_policy.rb', line 31

def self.from_raw(raw_policy)
  API_MAP[raw_policy]
end

.to_raw(policy) ⇒ Object



27
28
29
# File 'lib/temporalio/workflow/id_reuse_policy.rb', line 27

def self.to_raw(policy)
  API_MAP.invert[policy]
end