Module: MultiWorker
- Defined in:
- lib/multi_worker.rb,
lib/multi_worker/version.rb,
lib/multi_worker/interface.rb,
lib/multi_worker/adapters/qu.rb,
lib/multi_worker/adapters/que.rb,
lib/multi_worker/adapters/toro.rb,
lib/multi_worker/adapters/inline.rb,
lib/multi_worker/adapters/resque.rb,
lib/multi_worker/adapters/sidekiq.rb,
lib/multi_worker/adapters/sneakers.rb,
lib/multi_worker/adapters/backburner.rb,
lib/multi_worker/adapters/delayed_job.rb,
lib/multi_worker/adapters/sucker_punch.rb,
lib/multi_worker/adapters/queue_classic.rb,
lib/multi_worker/adapters/threaded_in_memory_queue.rb,
lib/multi_worker/adapters/torquebox_backgroundable.rb
Defined Under Namespace
Modules: Adapters, Interface
Constant Summary
collapse
- AdapterNames =
[
:resque,
:sidekiq,
:delayed_job,
:qu,
:queue_classic,
:que,
:sneakers,
:torquebox_backgroundable,
:threaded_in_memory_queue,
:sucker_punch,
:backburner,
:inline
]
- VERSION =
"0.2.0"
Class Attribute Summary collapse
Class Method Summary
collapse
Class Attribute Details
.default_queue ⇒ Object
Returns the value of attribute default_queue.
49
50
51
|
# File 'lib/multi_worker.rb', line 49
def default_queue
@default_queue
end
|
Class Method Details
.adapter(adapter_name = nil) ⇒ Object
71
72
73
74
75
76
77
78
|
# File 'lib/multi_worker.rb', line 71
def adapter(adapter_name=nil)
adapter_name ||= default_adapter
@adapters[adapter_name] ||= begin
require "multi_worker/adapters/#{adapter_name}"
klass_name = adapter_name.to_s.split('_').map(&:capitalize) * ''
MultiWorker::Adapters.const_get(klass_name)
end
end
|
28
29
30
|
# File 'lib/multi_worker.rb', line 28
def configure(&block)
instance_eval &block
end
|
.default_adapter(adapter_name = nil) ⇒ Object
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
|
# File 'lib/multi_worker.rb', line 51
def default_adapter(adapter_name=nil)
return (@default_adapter = adapter_name) if (adapter_name && !adapter_name.empty?)
@default_adapter ||= case
when defined?(::Resque) then :resque
when defined?(::Sidekiq) then :sidekiq
when defined?(::Delayed::Worker) then :delayed_job
when defined?(::Qu) then :qu
when defined?(::QC::Queue) then :queue_classic
when defined?(::Que) then :que
when defined?(::Sneakers::Worker) then :sneakers
when defined?(::TorqueBox::Messaging::Backgroundable) then :torquebox_backgroundable
when defined?(::ThreadedInMemoryQueue) then :threaded_in_memory_queue
when defined?(::SuckerPunch::Job) then :sucker_punch
when defined?(::Backburner) then :backburner
when defined?(::Toro) then :toro
else :inline
end
end
|
.default_options(opts = {}) ⇒ Object
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
# File 'lib/multi_worker.rb', line 32
def default_options(opts={})
@default_options ||= {
adapter: default_adapter,
queue: default_queue,
status: false,
retry: false,
lock: false,
unique: false
}
if opts && !opts.empty?
@default_options.merge!(opts)
end
@default_options
end
|
.enqueue(worker_klass, *args) ⇒ Object
24
25
26
|
# File 'lib/multi_worker.rb', line 24
def enqueue(worker_klass, *args)
worker_klass.perform_async(*args)
end
|