Module: Rworkflow::SidekiqHelper::ClassMethods

Defined in:
lib/rworkflow/sidekiq_helper.rb

Instance Method Summary collapse

Instance Method Details

#enqueue_job(*params) ⇒ Object

Mix-in methods



11
12
13
14
15
16
17
# File 'lib/rworkflow/sidekiq_helper.rb', line 11

def enqueue_job(*params)
  if should_perform_job_async?
    self.perform_async(*params)
  else
    inline_perform(params)
  end
end

#inline_perform(params) ⇒ Object



23
24
25
26
27
28
29
# File 'lib/rworkflow/sidekiq_helper.rb', line 23

def inline_perform(params)
  worker = self.new
  args = JSON.parse(params.to_json)
  jid = Digest::MD5.hexdigest((Time.now.to_f * 1000).to_i.to_s)
  worker.jid = jid
  worker.perform(*args)
end

#should_perform_job_async?Boolean

Returns:

  • (Boolean)


19
20
21
# File 'lib/rworkflow/sidekiq_helper.rb', line 19

def should_perform_job_async?
  return Rworkflow.config.sidekiq_perform_async
end