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 8 def initialize(run_interval, &block) 9 self.run_interval = run_interval 10 @last_run = nil 11 @run_proc = block 12 @enabled = true 13 end
Public Instance Methods
disable()
click to toggle source
# File lib/puppet/scheduler/job.rb 35 def disable 36 @enabled = false 37 end
enable()
click to toggle source
# File lib/puppet/scheduler/job.rb 31 def enable 32 @enabled = true 33 end
enabled?()
click to toggle source
# File lib/puppet/scheduler/job.rb 27 def enabled? 28 @enabled 29 end
interval_to_next_from(time)
click to toggle source
# File lib/puppet/scheduler/job.rb 39 def interval_to_next_from(time) 40 if ready?(time) 41 0 42 else 43 @run_interval - (time - @last_run) 44 end 45 end
ready?(time)
click to toggle source
# File lib/puppet/scheduler/job.rb 19 def ready?(time) 20 if @last_run 21 @last_run + @run_interval <= time 22 else 23 true 24 end 25 end
run(now)
click to toggle source
# File lib/puppet/scheduler/job.rb 47 def run(now) 48 @last_run = now 49 if @run_proc 50 @run_proc.call(self) 51 end 52 end
run_interval=(interval)
click to toggle source
# File lib/puppet/scheduler/job.rb 15 def run_interval=(interval) 16 @run_interval = [interval, 0].max 17 end