Class: Serially::TaskRun
- Inherits:
-
ActiveRecord::Base
- Object
- ActiveRecord::Base
- Serially::TaskRun
- Defined in:
- lib/serially/task_run.rb
Class Method Summary collapse
- .finished_statuses ⇒ Object
- .write_task_run(task, item_id, success, result_msg, result_obj, error_handled) ⇒ Object
Instance Method Summary collapse
Class Method Details
.finished_statuses ⇒ Object
15 16 17 |
# File 'lib/serially/task_run.rb', line 15 def self.finished_statuses [TaskRun.statuses[:finished_ok], TaskRun.statuses[:finished_error]] end |
.write_task_run(task, item_id, success, result_msg, result_obj, error_handled) ⇒ Object
23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 |
# File 'lib/serially/task_run.rb', line 23 def self.write_task_run(task, item_id, success, result_msg, result_obj, error_handled) task_run = TaskRun.where(item_class: task.klass, item_id: item_id, task_name: task.name).first_or_initialize if task_run.finished? Resque.logger.warn("Serially: task '#{task.name}' for #{task.klass}/#{item_id} finished already, not saving this task run") false else saved = task_run.tap {|t| t.task_order = task.task_order t.status = success ? TaskRun.statuses[:finished_ok] : TaskRun.statuses[:finished_error] t. = result_msg t.result_object = result_obj t.error_handled = error_handled t.finished_at = DateTime.now }.save saved end end |
Instance Method Details
#finished? ⇒ Boolean
19 20 21 |
# File 'lib/serially/task_run.rb', line 19 def finished? finished_ok? || finished_error? end |