class Leafy::Core::ScheduledReporter::ReportedTask

Attributes

period[R]

Public Class Methods

new(reporter, start, period) click to toggle source
# File lib/leafy/core/scheduled_reporter.rb, line 37
def initialize(reporter, start, period)
  @reporter = reporter
  @start = start
  @period = period
end

Public Instance Methods

call() click to toggle source
# File lib/leafy/core/scheduled_reporter.rb, line 47
def call
  @reporter.report
end
delay() click to toggle source
# File lib/leafy/core/scheduled_reporter.rb, line 43
def delay
  @period - (Concurrent.monotonic_time - @start) % @period
end
task(task = nil) click to toggle source
# File lib/leafy/core/scheduled_reporter.rb, line 51
def task(task = nil)
  @task ||= task
end
to_s() click to toggle source
# File lib/leafy/core/scheduled_reporter.rb, line 55
def to_s
  "start: #{Time.at(@start).utc} period: #{@period}"
end