class Kronos::ScheduledTask

Attributes

next_run[R]
task_id[R]

Public Class Methods

new(task_id, next_run) click to toggle source
# File lib/kronos/scheduled_task.rb, line 7
def initialize(task_id, next_run)
  @task_id = check_task_id(task_id)
  @next_run = check_next_run(next_run)
end

Private Instance Methods

check_next_run(time) click to toggle source
# File lib/kronos/scheduled_task.rb, line 18
def check_next_run(time)
  time.is_a?(Time) ? time : raise_invalid_argument('time', time, Time)
end
check_task_id(task_id) click to toggle source
# File lib/kronos/scheduled_task.rb, line 14
def check_task_id(task_id)
  task_id.is_a?(Symbol) ? task_id : raise_invalid_argument('Task ID', task_id, Symbol)
end
raise_invalid_argument(name, received, expectation) click to toggle source
# File lib/kronos/scheduled_task.rb, line 22
def raise_invalid_argument(name, received, expectation)
  raise(ArgumentError, "Invalid #{name} given (#{received.class}). #{expectation} expected.")
end