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