aboutsummaryrefslogtreecommitdiffstats
path: root/lib/active_job
diff options
context:
space:
mode:
authorRafael Mendonça França <rafaelmfranca@gmail.com>2014-05-19 18:08:44 -0300
committerRafael Mendonça França <rafaelmfranca@gmail.com>2014-05-19 18:08:44 -0300
commitc6925f52d07a01c2b729a70bac60b11f7e514d76 (patch)
tree63fd313e325270847760c81e82369d9286a57f5e /lib/active_job
parentac930b8077a7f494d531b9bb34aa431870fb0a3f (diff)
parent5cad2c1b8aa1139ba3de45b3ce26b9d5c9931f6c (diff)
downloadrails-c6925f52d07a01c2b729a70bac60b11f7e514d76.tar.gz
rails-c6925f52d07a01c2b729a70bac60b11f7e514d76.tar.bz2
rails-c6925f52d07a01c2b729a70bac60b11f7e514d76.zip
Merge pull request #34 from cristianbica/queue_classic-adpater
queue_classic adapter
Diffstat (limited to 'lib/active_job')
-rw-r--r--lib/active_job/queue_adapters/queue_classic_adapter.rb20
1 files changed, 20 insertions, 0 deletions
diff --git a/lib/active_job/queue_adapters/queue_classic_adapter.rb b/lib/active_job/queue_adapters/queue_classic_adapter.rb
new file mode 100644
index 0000000000..e3392a646e
--- /dev/null
+++ b/lib/active_job/queue_adapters/queue_classic_adapter.rb
@@ -0,0 +1,20 @@
+require 'queue_classic'
+
+module ActiveJob
+ module QueueAdapters
+ class QueueClassicAdapter
+ class << self
+ def queue(job, *args)
+ qc_queue = QC::Queue.new(job.queue_name)
+ qc_queue.enqueue("ActiveJob::QueueAdapters::QueueClassicAdapter::JobWrapper.perform", job, *args)
+ end
+ end
+
+ class JobWrapper
+ def self.perform(job, *args)
+ job.new.perform *Parameters.deserialize(args)
+ end
+ end
+ end
+ end
+end