module JobDispatch::Job

Constants

COMPLETED
DEFAULT_EXECUTION_TIMEOUT
FAILED
IN_PROGRESS
PENDING
STATUS_STRINGS

Public Instance Methods

failed!(results) click to toggle source
# File lib/job_dispatch/job.rb, line 22
def failed!(results)
  # update database
  self.completed_at = Time.now
  self.result = results
  if retry_count && retry_count > 0 && retry_delay && retry_delay > 0
    self.retry_count -= 1
    self.scheduled_at = Time.now + retry_delay.seconds
    self.retry_delay *= 2
    self.status = PENDING
  else
    self.status = FAILED
  end
  save!
end
succeeded!(results) click to toggle source
# File lib/job_dispatch/job.rb, line 37
def succeeded!(results)
  self.status = COMPLETED
  self.result = results
  self.completed_at = Time.now
  save!
end
timed_out?() click to toggle source
# File lib/job_dispatch/job.rb, line 18
def timed_out?
  expire_execution_at < Time.now
end