2017-07-09 13:49:52 -04:00
|
|
|
# frozen_string_literal: true
|
2017-07-10 09:40:03 -04:00
|
|
|
|
2016-08-06 12:41:18 -04:00
|
|
|
require "queue_classic"
|
2018-06-29 06:12:15 -04:00
|
|
|
require "active_support/core_ext/module/redefine_method"
|
2014-05-19 17:01:56 -04:00
|
|
|
|
|
|
|
module QC
|
|
|
|
class Queue
|
2018-06-29 06:12:15 -04:00
|
|
|
redefine_method(:enqueue) do |method, *args|
|
2016-08-06 12:41:18 -04:00
|
|
|
receiver_str, _, message = method.rpartition(".")
|
2014-05-19 17:01:56 -04:00
|
|
|
receiver = eval(receiver_str)
|
|
|
|
receiver.send(message, *args)
|
|
|
|
end
|
2014-08-24 08:29:20 -04:00
|
|
|
|
2018-06-29 06:12:15 -04:00
|
|
|
redefine_method(:enqueue_in) do |seconds, method, *args|
|
2016-08-06 12:41:18 -04:00
|
|
|
receiver_str, _, message = method.rpartition(".")
|
2014-08-24 08:29:20 -04:00
|
|
|
receiver = eval(receiver_str)
|
|
|
|
receiver.send(message, *args)
|
|
|
|
end
|
|
|
|
|
2018-06-29 06:12:15 -04:00
|
|
|
redefine_method(:enqueue_at) do |not_before, method, *args|
|
2016-08-06 12:41:18 -04:00
|
|
|
receiver_str, _, message = method.rpartition(".")
|
2014-08-24 08:29:20 -04:00
|
|
|
receiver = eval(receiver_str)
|
|
|
|
receiver.send(message, *args)
|
|
|
|
end
|
2014-05-19 17:01:56 -04:00
|
|
|
end
|
|
|
|
end
|