class Puppet::Scheduler::Job
Attributes
last_run[RW]
run_interval[R]
start_time[RW]
Public Class Methods
new(run_interval, &block)
click to toggle source
# File lib/puppet/scheduler/job.rb 7 def initialize(run_interval, &block) 8 self.run_interval = run_interval 9 @last_run = nil 10 @run_proc = block 11 @enabled = true 12 end
Public Instance Methods
disable()
click to toggle source
# File lib/puppet/scheduler/job.rb 34 def disable 35 @enabled = false 36 end
enable()
click to toggle source
# File lib/puppet/scheduler/job.rb 30 def enable 31 @enabled = true 32 end
enabled?()
click to toggle source
# File lib/puppet/scheduler/job.rb 26 def enabled? 27 @enabled 28 end
interval_to_next_from(time)
click to toggle source
# File lib/puppet/scheduler/job.rb 38 def interval_to_next_from(time) 39 if ready?(time) 40 0 41 else 42 @run_interval - (time - @last_run) 43 end 44 end
ready?(time)
click to toggle source
# File lib/puppet/scheduler/job.rb 18 def ready?(time) 19 if @last_run 20 @last_run + @run_interval <= time 21 else 22 true 23 end 24 end
run(now)
click to toggle source
# File lib/puppet/scheduler/job.rb 46 def run(now) 47 @last_run = now 48 if @run_proc 49 @run_proc.call(self) 50 end 51 end
run_interval=(interval)
click to toggle source
# File lib/puppet/scheduler/job.rb 14 def run_interval=(interval) 15 @run_interval = [interval, 0].max 16 end