errands 0.0.4 → 0.0.5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/errands/runner.rb +24 -16
- data/lib/errands/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3a86b7049a20004465fe6b49298caa77ff92234e
|
4
|
+
data.tar.gz: fe65b0617f9b4455273850c18e3fd5932c2bd844
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 344f744aca9b7ec2682e45a94191e772ca7b8f48699c311a6ae0933f3e49a96067f48e733a977091971a0227a32dd5e1352679a35e706b5f324b79d846feef5e
|
7
|
+
data.tar.gz: fc3a8bab0ac4618e6221453711c4b8226595b3162893dca957cca199fe4add2691d10ab12920c79ffc821013b49bd1d64bb141e579f06ed44a65f3183fa84afa
|
data/lib/errands/runner.rb
CHANGED
@@ -201,7 +201,7 @@ module Errands
|
|
201
201
|
end
|
202
202
|
|
203
203
|
def starting(started)
|
204
|
-
|
204
|
+
log_activity ["Starting #{self.class} in #{$0} (#{$$}), at #{Time.now}, with :", our[:config], "workers : #{started}", "\n"].join("\n")
|
205
205
|
|
206
206
|
running thread_name, loop: true, started: started, type: :starter do
|
207
207
|
Array(my[:started]).uniq.each { |s| threads[s] ||= send *(respond_to?(s, true) ? [s] : [:working, s]) }
|
@@ -252,7 +252,7 @@ module Errands
|
|
252
252
|
|
253
253
|
def stopped?
|
254
254
|
our[:stopped] = threads.key_sliced(stopped_threads).alive.empty?.tap { |bool|
|
255
|
-
log_activity Time.now, "All activities stopped" if bool
|
255
|
+
log_activity Time.now, "#{self.class} #{name rescue nil} : All activities stopped" if bool
|
256
256
|
}
|
257
257
|
end
|
258
258
|
|
@@ -271,7 +271,7 @@ module Errands
|
|
271
271
|
(e = events.shift) ? errands(*e) : sleep(frequency(:main_loop) || 1)
|
272
272
|
end
|
273
273
|
|
274
|
-
log_activity Time.now, "Exiting main loop"
|
274
|
+
log_activity Time.now, "#{self.class} #{name rescue nil} : Exiting main loop"
|
275
275
|
end
|
276
276
|
|
277
277
|
def ready_receptor!(processing)
|
@@ -299,7 +299,7 @@ module Errands
|
|
299
299
|
else
|
300
300
|
threads[name] = Thread.new {
|
301
301
|
(my && my[:name] && (my[:named] = true)) || Thread.stop || (my[:named] = true)
|
302
|
-
r = my[:result] =
|
302
|
+
r = my[:result] = rescued_execution &block
|
303
303
|
["stop_#{name}", our[name] && "stop_#{his(our[name])[:type]}"].compact.each { |s| checked_send s }
|
304
304
|
my[:deletable] && threads.delete(name)
|
305
305
|
r
|
@@ -325,22 +325,28 @@ module Errands
|
|
325
325
|
}.to_sym
|
326
326
|
end
|
327
327
|
|
328
|
-
def rescued_loop
|
329
|
-
loop { our["#{my[:name]}_iteration".to_sym] = begin
|
330
|
-
my[:stop] ? break : yield; Time.now
|
331
|
-
rescue => e
|
332
|
-
log_error e, my[:data], my
|
333
|
-
end }
|
334
|
-
end
|
335
|
-
|
336
328
|
def rescued_execution
|
337
|
-
|
338
|
-
|
339
|
-
|
340
|
-
|
329
|
+
loop do
|
330
|
+
our["#{my[:name]}_iteration".to_sym] = begin
|
331
|
+
my[:stop] ? break : yield; Time.now
|
332
|
+
rescue => e
|
333
|
+
my[:logged] = Time.now.to_f
|
334
|
+
log_error e, my[:data], my
|
335
|
+
rescue Exception => e
|
336
|
+
my[:logged] = Time.now.to_f
|
337
|
+
log_error e, my[:data], my
|
338
|
+
raise e
|
339
|
+
end
|
340
|
+
|
341
|
+
my[:loop] || break
|
341
342
|
end
|
342
343
|
end
|
343
344
|
|
345
|
+
def rescued_loop(&block)
|
346
|
+
my[:loop] = true
|
347
|
+
rescued_execution &block
|
348
|
+
end
|
349
|
+
|
344
350
|
def checked_send(meth, recipient = self, *_)
|
345
351
|
recipient.respond_to?(meth, true) && (recipient.send(meth, *_) rescue nil)
|
346
352
|
end
|
@@ -356,6 +362,8 @@ module Errands
|
|
356
362
|
end
|
357
363
|
|
358
364
|
def log_activity(*_)
|
365
|
+
return unless our[:quiet]
|
366
|
+
|
359
367
|
message = _.map(&:to_s).join(" ")
|
360
368
|
# message = activity if message.empty?
|
361
369
|
puts message
|
data/lib/errands/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: errands
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- lacravate
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-
|
11
|
+
date: 2018-08-20 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rspec
|