class Blackbeard::GroupMetric

Attributes

group[R]
metric[R]

Public Class Methods

new(group, metric) click to toggle source
# File lib/blackbeard/group_metric.rb, line 8
def initialize(group, metric)
  @group = group
  @metric = metric
end

Public Instance Methods

add(context, amount) click to toggle source
# File lib/blackbeard/group_metric.rb, line 17
def add(context, amount)
  uid = context.unique_identifier
  segment = group.segment_for(context)
  metric_data.add(uid, amount, segment) unless segment.nil?
end
chartable_result_for_day(date) click to toggle source
# File lib/blackbeard/group_metric.rb, line 35
def chartable_result_for_day(date)
  metric_data.result_for_day(date)
end
chartable_result_for_hour(hour) click to toggle source
# File lib/blackbeard/group_metric.rb, line 31
def chartable_result_for_hour(hour)
  metric_data.result_for_hour(hour)
end
chartable_segments() click to toggle source
# File lib/blackbeard/group_metric.rb, line 27
def chartable_segments
  group.segments
end
metric_data() click to toggle source
# File lib/blackbeard/group_metric.rb, line 23
def metric_data
  @metric_data ||= MetricData.const_get(type.capitalize).new(metric, group, nil)
end
type() click to toggle source
# File lib/blackbeard/group_metric.rb, line 13
def type
  metric.type
end