Class: Burst::Worker

Inherits:
ActiveJob::Base
  • Object
show all
Defined in:
lib/burst/worker.rb

Instance Method Summary collapse

Instance Method Details

#perform(workflow_id, job_id, resume_data = nil) ⇒ Object



3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# File 'lib/burst/worker.rb', line 3

def perform(workflow_id, job_id, resume_data = nil)
  setup(workflow_id, job_id)

  job.payloads = incoming_payloads

  result = if resume_data.nil?
             @manager.start_job!(job)
           else
             @manager.resume_job!(job, resume_data)
  end

  @manager.job_performed!(job, result)
rescue StandardError => e
  @manager.fail_job!(job)
  raise e
end