class Reportier::RedisPersister

Public Instance Methods

clear() click to toggle source
# File lib/reportier/persister.rb, line 73
def clear
  Redis.current.del(Redis.current.keys(name + '*'))
rescue Redis::CommandError
end
get_date() click to toggle source
# File lib/reportier/persister.rb, line 82
def get_date
  date = Redis.current.get "Reportier:DateFor#{name}"
  return if date.nil? || date.empty?
  DateTime.parse(date)
end
set_date(date) click to toggle source
Calls superclass method Reportier::Persister#set_date
# File lib/reportier/persister.rb, line 88
def set_date(date)
  Redis.current.set "Reportier:DateFor#{name}", date.to_s
  super
end
to_hash() click to toggle source
Calls superclass method Reportier::Persister#to_hash
# File lib/reportier/persister.rb, line 78
def to_hash
  super(Hash[reporting_vars.map { |k| [k, get(k).to_i] }])
end

Private Instance Methods

_initialize_reporting_vars() click to toggle source
# File lib/reportier/persister.rb, line 117
def _initialize_reporting_vars
  @tracker.defaults.reporting_vars.each do |key, value|
    set(key, value)
  end
end
get(item) click to toggle source
# File lib/reportier/persister.rb, line 109
def get(item)
  Redis.current.get name(item)
end
incr(item) click to toggle source
# File lib/reportier/persister.rb, line 101
def incr(item)
  Redis.current.incr name(item)
end
name(item=nil) click to toggle source
# File lib/reportier/persister.rb, line 113
def name(item=nil)
  "#{@tracker.name}:#{item}"
end
reporting_vars() click to toggle source
# File lib/reportier/persister.rb, line 95
def reporting_vars
  Redis.current.keys(name + '*').map do |var|
    var.sub(name,'').to_sym
  end
end
set(item, val) click to toggle source
# File lib/reportier/persister.rb, line 105
def set(item, val)
  Redis.current.set name(item), val
end