class Trifle::Stats::Configuration

Attributes

beginning_of_week[RW]
driver[W]
time_zone[RW]
track_ranges[RW]

Public Class Methods

new() click to toggle source
# File lib/trifle/stats/configuration.rb, line 11
def initialize
  @ranges = %i[minute hour day week month quarter year]
  @beginning_of_week = :monday
  @time_zone = 'GMT'
end

Public Instance Methods

driver() click to toggle source
# File lib/trifle/stats/configuration.rb, line 31
def driver
  raise DriverNotFound if @driver.nil?

  @driver
end
ranges() click to toggle source
# File lib/trifle/stats/configuration.rb, line 25
def ranges
  return @ranges if blank?(track_ranges)

  @ranges & track_ranges
end
tz() click to toggle source
# File lib/trifle/stats/configuration.rb, line 17
def tz
  TZInfo::Timezone.get(@time_zone)
rescue TZInfo::InvalidTimezoneIdentifier => e
  puts "Trifle: #{e} - #{time_zone}; Defaulting to GMT."

  TZInfo::Timezone.get('GMT')
end

Private Instance Methods

blank?(obj) click to toggle source
# File lib/trifle/stats/configuration.rb, line 39
def blank?(obj)
  obj.respond_to?(:empty?) ? !!obj.empty? : !obj
end