module ActiveJobReporter::ReportableJob

Public Instance Methods

log(type, **message) click to toggle source
# File lib/active_job_reporter/reportable_job.rb, line 42
def log(type, **message)
  job_record.add_message type: type, message: message
end
result() click to toggle source
# File lib/active_job_reporter/reportable_job.rb, line 34
def result
  job_record.result.to_sym
end
result=(result) click to toggle source
# File lib/active_job_reporter/reportable_job.rb, line 38
def result=(result)
  job_record.result = result
end
update_status(status) click to toggle source
# File lib/active_job_reporter/reportable_job.rb, line 29
def update_status(status)
  job_record.status = status
  job_record.save
end

Private Instance Methods

job_record() click to toggle source
# File lib/active_job_reporter/reportable_job.rb, line 48
def job_record
  @job_record ||= ActiveJobReporter::Job.find_or_initialize_by(job_id: job_id) do |job_record|
    job_record.job_type = self.class.name
    job_record.user = current_user if respond_to? :current_user
    if respond_to? :related_objects
      (related_objects || []).each do |object|
        job_record.job_objects.build(object: object)
      end
    end
  end
end