Class: DurableFlow::WorkflowStep
- Inherits:
-
ApplicationRecord
- Object
- ActiveRecord::Base
- ApplicationRecord
- DurableFlow::WorkflowStep
- Includes:
- Live::Broadcastable
- Defined in:
- lib/durable_flow/models/workflow_step.rb
Instance Method Summary collapse
- #complete!(value) ⇒ Object
- #live_snapshot ⇒ Object
- #metadata_hash ⇒ Object
- #result_value ⇒ Object
- #succeeded? ⇒ Boolean
Instance Method Details
#complete!(value) ⇒ Object
20 21 22 23 24 25 26 |
# File 'lib/durable_flow/models/workflow_step.rb', line 20 def complete!(value) update!( status: "succeeded", result: Serializer.dump(value), completed_at: Time.current, ) end |
#live_snapshot ⇒ Object
32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 |
# File 'lib/durable_flow/models/workflow_step.rb', line 32 def live_snapshot { id: id, workflow_run_id: workflow_run_id, name: name, status: status, attempts: attempts, result: result, metadata: , started_at: started_at, completed_at: completed_at, created_at: created_at, updated_at: updated_at, } end |
#metadata_hash ⇒ Object
28 29 30 |
# File 'lib/durable_flow/models/workflow_step.rb', line 28 def .presence || {} end |
#result_value ⇒ Object
16 17 18 |
# File 'lib/durable_flow/models/workflow_step.rb', line 16 def result_value Serializer.load(result) end |
#succeeded? ⇒ Boolean
12 13 14 |
# File 'lib/durable_flow/models/workflow_step.rb', line 12 def succeeded? status == "succeeded" end |