class Turnstile::Observer

Public Instance Methods

stats() click to toggle source
# File lib/turnstile/observer.rb, line 15
def stats
  data      = adapter.fetch
  platforms = Hash[data.group_by { |d| d[:platform] }.map { |k, v| [k, sampler.extrapolate(v.count)] }]
  total     = platforms.values.inject(:+) || 0
  Stats.new({
              stats: {
                total:     total,
                platforms: platforms
              },
              users: data
            })
end