Class: EXEL::Sidekiq::SidekiqProvider

Inherits:
Object
  • Object
show all
Defined in:
lib/exel/sidekiq/sidekiq_provider.rb

Instance Method Summary collapse

Constructor Details

#initialize(context) ⇒ SidekiqProvider

Returns a new instance of SidekiqProvider.



7
8
9
# File 'lib/exel/sidekiq/sidekiq_provider.rb', line 7

def initialize(context)
  @context = context
end

Instance Method Details

#do_async(block) ⇒ Object



11
12
13
14
15
16
17
18
19
# File 'lib/exel/sidekiq/sidekiq_provider.rb', line 11

def do_async(block)
  @context[:_block] = block

  push_args = {'class' => EXEL::Sidekiq::ExecutionWorker, 'args' => [@context.serialize]}
  push_args['queue'] = @context[:queue] if @context[:queue]
  push_args['retry'] = @context[:retry] if @context[:retry]

  ::Sidekiq::Client.push(push_args)
end