module ResqueDuplicateless::Ext::Resque::Job
Public Instance Methods
create(queue, klass, *args)
click to toggle source
# File lib/resque-duplicateless/ext/resque/job.rb, line 9 def create(queue, klass, *args) create_with_options :queue => queue, :class => klass, :args => args end
create_with_options(options = {})
click to toggle source
# File lib/resque-duplicateless/ext/resque/job.rb, line 13 def create_with_options(options = {}) queue, klass, args = options[:queue], options[:class], options[:args] ::Resque.validate(klass, queue) if ::Resque.inline? # Instantiating a Resque::Job and calling perform on it so callbacks run # decode(encode(args)) to ensure that args are normalized in the same manner as a non-inline job new(:inline, {'class' => klass, 'args' => decode(encode(args))}).perform # FINALLY, a unique push! elsif options[:unique] ::Resque.unique_push(queue, :class => klass.to_s, :args => args) else ::Resque.push(queue, :class => klass.to_s, :args => args) end end