Module: ActiveJob::Temporal::Inspect
- Defined in:
- lib/activejob/temporal/inspect.rb
Constant Summary collapse
- JOB_CLASS_NAME_PATTERN =
/\A[A-Z]\w*(?:::[A-Z]\w*)*\z/- WORKFLOW_STATES =
{ Temporalio::Client::WorkflowExecutionStatus::RUNNING => :running, Temporalio::Client::WorkflowExecutionStatus::COMPLETED => :completed, Temporalio::Client::WorkflowExecutionStatus::FAILED => :failed, Temporalio::Client::WorkflowExecutionStatus::CANCELED => :canceled, Temporalio::Client::WorkflowExecutionStatus::TERMINATED => :terminated, Temporalio::Client::WorkflowExecutionStatus::CONTINUED_AS_NEW => :continued_as_new, Temporalio::Client::WorkflowExecutionStatus::TIMED_OUT => :timed_out }.freeze
Class Method Summary collapse
- .completed?(job_class, job_id) ⇒ Boolean
- .failed?(job_class, job_id) ⇒ Boolean
- .running?(job_class, job_id) ⇒ Boolean
- .status(job_class, job_id) ⇒ Object
Class Method Details
.completed?(job_class, job_id) ⇒ Boolean
41 |
# File 'lib/activejob/temporal/inspect.rb', line 41 def completed?(job_class, job_id) = workflow_state?(job_class, job_id, :completed) |
.failed?(job_class, job_id) ⇒ Boolean
43 |
# File 'lib/activejob/temporal/inspect.rb', line 43 def failed?(job_class, job_id) = workflow_state?(job_class, job_id, :failed) |
.running?(job_class, job_id) ⇒ Boolean
39 |
# File 'lib/activejob/temporal/inspect.rb', line 39 def running?(job_class, job_id) = workflow_state?(job_class, job_id, :running) |
.status(job_class, job_id) ⇒ Object
24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
# File 'lib/activejob/temporal/inspect.rb', line 24 def status(job_class, job_id) validate_job_class!(job_class) validate_job_id!(job_id) client = ActiveJob::Temporal.client describe_schedule_execution_workflow(client, job_id) || describe_default_workflow(client, job_class, job_id) || describe_search_attribute_workflow(client, job_class, job_id) rescue ArgumentError raise rescue StandardError => e raise ActiveJob::Temporal::TemporalConnectionError, "Failed to inspect Temporal workflow for job_id #{job_id}: #{e.}" end |