class TimeScheduler::Scheduler

Public Instance Methods

cancel( topic ) click to toggle source
# File lib/time_scheduler/scheduler.rb, line 163
def cancel( topic )
  if  schedule  =  schedules[topic]
    schedule.cancel
  end
rescue => e
  puts  e.backtrace
ensure
  schedules.delete( topic )
end
join() click to toggle source
# File lib/time_scheduler/scheduler.rb, line 173
def join
  while  schedules.size > 0
    topic  =  schedules.keys.first
    schedule  =  schedules[topic]
    schedule.join
  end
end
reserved?( topic ) click to toggle source
# File lib/time_scheduler/scheduler.rb, line 133
def reserved?( topic )
  schedules.has_key?( topic )
end
schedules() click to toggle source
# File lib/time_scheduler/scheduler.rb, line 129
def schedules
  @schedules  ||=  {}
end
topics() click to toggle source
# File lib/time_scheduler/scheduler.rb, line 159
def topics
  schedules.keys.dup
end
wait_each( topic, **option, &block ) click to toggle source
# File lib/time_scheduler/scheduler.rb, line 144
def wait_each( topic, **option, &block )
  schedule  =  TimeScheduler::Schedule.new
  schedules[topic]  =  schedule
  schedule.wait_each( **option, &block )
  topic
end
wait_once( topic, **option ) click to toggle source
# File lib/time_scheduler/scheduler.rb, line 151
def wait_once( topic, **option )
  schedule  =  TimeScheduler::Schedule.new
  schedules[topic]  =  schedule
  schedule.wait_once( **option )
ensure
  schedules.delete( topic )
end
wait_reset( topic, **option, &block ) click to toggle source
# File lib/time_scheduler/scheduler.rb, line 137
def wait_reset( topic, **option, &block )
  if  schedule  =  schedules[topic]
    schedule.wait_reset( **option, &block )
    topic
  end
end