class ScheduleChecker::Schedule
Attributes
nonstop[R]
sessions[R]
Public Class Methods
new(nonstop=false)
click to toggle source
# File lib/schedule-checker/schedule.rb, line 8 def initialize(nonstop=false) @sessions = [] # Session objects @nonstop = nonstop end
nonstop()
click to toggle source
# File lib/schedule-checker/schedule.rb, line 13 def self.nonstop ScheduleChecker::Schedule.new(true) end
Public Instance Methods
add_session(session)
click to toggle source
# File lib/schedule-checker/schedule.rb, line 17 def add_session(session) raise "can't add to a non-stop schedule" if @nonstop if self.in_a_session?(session.startpoint) || self.in_a_session?(session.endpoint) raise "new session overlaps with existing session" end @sessions << session end
in_a_session?(t)
click to toggle source
# File lib/schedule-checker/schedule.rb, line 26 def in_a_session?(t) # t is a timestamp return true if @nonstop @sessions.each{|s| return true if s.in_session?(t) } false end