Class: Scheduler

Inherits:
Performer::Base show all
Defined in:
lib/remme/scheduler.rb

Constant Summary collapse

TIMEOUT_MULTIPLIER =
60
@@class_instance_fields =
%i(
  after_hook before_hook
  message notifier
)

Class Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Class Attribute Details

.completedObject Also known as: completed?

Returns the value of attribute completed.



7
8
9
# File 'lib/remme/scheduler.rb', line 7

def completed
  @completed
end

Class Method Details

.build_class_instance_fields(options) ⇒ Object



24
25
26
27
28
# File 'lib/remme/scheduler.rb', line 24

def build_class_instance_fields(options)
  @@class_instance_fields.each do |field_name|
    instance_variable_set("@#{field_name}", options.delete(field_name))
  end
end

.run(options) ⇒ Object



15
16
17
18
# File 'lib/remme/scheduler.rb', line 15

def run(options)
  build_class_instance_fields(options)
  perform_in(options.delete(:timeout) * TIMEOUT_MULTIPLIER)
end

Instance Method Details

#performObject



31
32
33
# File 'lib/remme/scheduler.rb', line 31

def perform
  complete_after { notify }
end