aboutsummaryrefslogtreecommitdiffstats
path: root/activejob/lib
diff options
context:
space:
mode:
authorDavid Genord II <david@collectiveidea.com>2014-09-18 15:52:30 -0400
committerDavid Genord II <david@collectiveidea.com>2014-09-18 15:52:30 -0400
commit0b10565d962f92e3a60ca3e0bf0e0a933125d690 (patch)
tree5d3f4d5a8bbc39f64cd856c9bdc1bbd0567d07e8 /activejob/lib
parent25f5af7f3f2695b0a8c33e2fce7fcd2bd630ece1 (diff)
downloadrails-0b10565d962f92e3a60ca3e0bf0e0a933125d690.tar.gz
rails-0b10565d962f92e3a60ca3e0bf0e0a933125d690.tar.bz2
rails-0b10565d962f92e3a60ca3e0bf0e0a933125d690.zip
Cleaner queuing of jobs using Delayed Job
Diffstat (limited to 'activejob/lib')
-rw-r--r--activejob/lib/active_job/queue_adapters/delayed_job_adapter.rb12
1 files changed, 9 insertions, 3 deletions
diff --git a/activejob/lib/active_job/queue_adapters/delayed_job_adapter.rb b/activejob/lib/active_job/queue_adapters/delayed_job_adapter.rb
index 30c535f3b4..8c1ac69cdc 100644
--- a/activejob/lib/active_job/queue_adapters/delayed_job_adapter.rb
+++ b/activejob/lib/active_job/queue_adapters/delayed_job_adapter.rb
@@ -5,16 +5,22 @@ module ActiveJob
class DelayedJobAdapter
class << self
def enqueue(job)
- JobWrapper.new.delay(queue: job.queue_name).perform(job.serialize)
+ Delayed::Job.enqueue(JobWrapper.new(job.serialize), queue: job.queue_name)
end
def enqueue_at(job, timestamp)
- JobWrapper.new.delay(queue: job.queue_name, run_at: Time.at(timestamp)).perform(job.serialize)
+ Delayed::Job.enqueue(JobWrapper.new(job.serialize), queue: job.queue_name, run_at: Time.at(timestamp))
end
end
class JobWrapper #:nodoc:
- def perform(job_data)
+ attr_accessor :job_data
+
+ def initialize(job_data)
+ @job_data = job_data
+ end
+
+ def perform
Base.execute(job_data)
end
end