Module: Lux::DelayedJob
- Extended by:
- DelayedJob
- Included in:
- DelayedJob
- Defined in:
- lib/lux/delayed_job/lib/redis.rb,
lib/lux/delayed_job/delayed_job.rb
Defined Under Namespace
Modules: Memory, NSQ, Postgre, Redis
Constant Summary
collapse
- @@server =
nil
Instance Method Summary
collapse
Instance Method Details
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
# File 'lib/lux/delayed_job/delayed_job.rb', line 18
def pop
obj, method_to_call = @@server.pop
return unless obj
puts "JOB POP> #{obj.to_s}.#{method_to_call}".yellow
if method_to_call
begin
obj.send(method_to_call)
rescue
puts("Lux::DelayedJob.pop FAIL for :#{method_to_call} (#{$!.message})".red)
end
else
eval(obj)
end
true
end
|
#push(object, method_to_call = nil) ⇒ Object
13
14
15
16
|
# File 'lib/lux/delayed_job/delayed_job.rb', line 13
def push object, method_to_call=nil
die "No DelayedJob server defined" unless @@server
@@server.push [object, method_to_call]
end
|
#run!(seconds = 2) ⇒ Object
34
35
36
37
38
39
40
41
42
43
|
# File 'lib/lux/delayed_job/delayed_job.rb', line 34
def run! seconds=2
puts "JOB QUE> is running for #{@@server}".green
Thread.new do
while true
print '.'
true while Lux::DelayedJob.pop
sleep seconds
end
end.join
end
|
#server=(name) ⇒ Object
6
7
8
9
10
11
|
# File 'lib/lux/delayed_job/delayed_job.rb', line 6
def server= name
adapter = "Lux::DelayedJob::#{name.to_s.capitalize}"
@@server = adapter.constantize
rescue NameError
die 'No adapter %s not found' % adapter
end
|