class Sidejobs::Extensions::ActiveJob::QueueAdapters::SidejobsAdapter

Public Instance Methods

enqueue(job) click to toggle source
# File lib/sidejobs/extensions/active_job/queue_adapter.rb, line 7
def enqueue(job)
  Sidejobs.queue.add(
    job.serialize,
    queue: job.queue_name,
    priority: calculate_priority(job.queue_name)
  )
end
enqueue_at(job, timestamp) click to toggle source
# File lib/sidejobs/extensions/active_job/queue_adapter.rb, line 15
def enqueue_at(job, timestamp)
  Sidejobs.queue.add(
    job.serialize,
    queue: job.queue_name,
    priority: calculate_priority(job.queue_name),
    schedule_at: Time.at(timestamp)
  )
end

Private Instance Methods

calculate_priority(queue) click to toggle source
# File lib/sidejobs/extensions/active_job/queue_adapter.rb, line 26
def calculate_priority(queue)
  case queue
  when 'mailers'
    80
  when 'high_priority'
    60
  when 'default'
    40
  when 'low_priority'
    20
  else
    0
  end
end