mongodb-scheduler 0.2.0 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/Gemfile.lock +1 -1
- data/lib/scheduler/schedulable.rb +13 -1
- data/lib/scheduler/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 87e0f2e726fb838add83934be813e61352571f077a139cc0d2535fb211f528df
|
4
|
+
data.tar.gz: c71947416d285062b583cae3a8b61ce2ec92c011e036a01226dc148d9a72eaf8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 215432b91e2be5dd6a86ea4c1531a4a3b97591da87f46fe622d17c1d855527d8e9c27e694573739083443fa659ca0266bd71ec79b84d2959a7910b610fdf3153
|
7
|
+
data.tar.gz: 690bdd338b0cb06414505e423aeb8149bfec36e4fa4fa1870449910354d0ed32a69f18036500c57a6af5126ceaf738effb3cceb0ef5a9f10ccb934575b88202b
|
data/Gemfile.lock
CHANGED
@@ -131,7 +131,9 @@ module Scheduler
|
|
131
131
|
"sure to implement it before performing the job." unless job.respond_to? :call
|
132
132
|
self.status!(:running)
|
133
133
|
self.update(pid: pid) if pid.present?
|
134
|
-
|
134
|
+
catch :error do
|
135
|
+
job.call(*self.args)
|
136
|
+
end
|
135
137
|
self.completed_at = Time.current
|
136
138
|
if self.status == :running
|
137
139
|
self.progress!(100)
|
@@ -166,6 +168,16 @@ module Scheduler
|
|
166
168
|
self.update(progress: progress + amount.to_f) if amount.numeric?
|
167
169
|
end
|
168
170
|
|
171
|
+
##
|
172
|
+
# Immediately stops job execution and logs the error.
|
173
|
+
#
|
174
|
+
# @param [String] message the error message.
|
175
|
+
def error!(message)
|
176
|
+
self.log :error, message
|
177
|
+
self.status! :error
|
178
|
+
throw :error
|
179
|
+
end
|
180
|
+
|
169
181
|
##
|
170
182
|
# Registers a log message with the given level.
|
171
183
|
def log(level, message)
|
data/lib/scheduler/version.rb
CHANGED