implement provider_job_id
for Backburner jobs
This commit is contained in:
parent
ba19dbc499
commit
0cb0880b1a
@ -1,3 +1,7 @@
|
||||
* Set `provider_job_id` for Backburner jobs
|
||||
|
||||
*Cameron Matheson*
|
||||
|
||||
* Add `perform_all_later` to enqueue multiple jobs at once
|
||||
|
||||
This adds the ability to bulk enqueue jobs, without running callbacks, by
|
||||
|
@ -16,12 +16,16 @@ module QueueAdapters
|
||||
# Rails.application.config.active_job.queue_adapter = :backburner
|
||||
class BackburnerAdapter
|
||||
def enqueue(job) # :nodoc:
|
||||
Backburner::Worker.enqueue(JobWrapper, [job.serialize], queue: job.queue_name, pri: job.priority)
|
||||
response = Backburner::Worker.enqueue(JobWrapper, [job.serialize], queue: job.queue_name, pri: job.priority)
|
||||
job.provider_job_id = response[:id] if response.is_a?(Hash)
|
||||
response
|
||||
end
|
||||
|
||||
def enqueue_at(job, timestamp) # :nodoc:
|
||||
delay = timestamp - Time.current.to_f
|
||||
Backburner::Worker.enqueue(JobWrapper, [job.serialize], queue: job.queue_name, pri: job.priority, delay: delay)
|
||||
response = Backburner::Worker.enqueue(JobWrapper, [job.serialize], queue: job.queue_name, pri: job.priority, delay: delay)
|
||||
job.provider_job_id = response[:id] if response.is_a?(Hash)
|
||||
response
|
||||
end
|
||||
|
||||
class JobWrapper # :nodoc:
|
||||
|
Loading…
Reference in New Issue
Block a user