Class: NikeV2::Metric

Inherits:
Object
  • Object
show all
Defined in:
lib/nike_v2/metric.rb

Instance Method Summary collapse

Constructor Details

#initialize(activity, data) ⇒ Metric

Returns a new instance of Metric.



4
5
6
7
8
9
# File 'lib/nike_v2/metric.rb', line 4

def initialize(activity, data)
  @activity = activity
  @unit = data['intervalUnit']
  @type = data ['metricType']
  @values = data['values'].collect(&:to_f)
end

Instance Method Details

#during(start, stop) ⇒ Object



27
28
29
# File 'lib/nike_v2/metric.rb', line 27

def during(start, stop)
  @values[time_to_index(start)..time_to_index(stop)]
end

#totalObject



19
20
21
# File 'lib/nike_v2/metric.rb', line 19

def total
  @total ||= values.inject(:+)
end

#total_during(start, stop) ⇒ Object



23
24
25
# File 'lib/nike_v2/metric.rb', line 23

def total_during(start, stop)
  during(start, stop).collect(&:to_f).inject(:+) rescue 0
end

#typeObject



11
12
13
# File 'lib/nike_v2/metric.rb', line 11

def type
  @type
end

#valuesObject



15
16
17
# File 'lib/nike_v2/metric.rb', line 15

def values
  @values
end