Class: NikeV2::Metric
- Inherits:
-
Object
- Object
- NikeV2::Metric
- Defined in:
- lib/nike_v2/metric.rb
Instance Method Summary collapse
- #during(start, stop) ⇒ Object
-
#initialize(activity, data) ⇒ Metric
constructor
A new instance of Metric.
- #total ⇒ Object
- #total_during(start, stop) ⇒ Object
- #type ⇒ Object
- #values ⇒ Object
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 |
#total ⇒ Object
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 |
#type ⇒ Object
11 12 13 |
# File 'lib/nike_v2/metric.rb', line 11 def type @type end |
#values ⇒ Object
15 16 17 |
# File 'lib/nike_v2/metric.rb', line 15 def values @values end |