Class: Project::Unpacker::Quarter

Inherits:
Base
  • Object
show all
Defined in:
lib/ossert/repositories.rb

Instance Method Summary collapse

Methods inherited from Base

#coerce_value, #initialize, #stored_data

Constructor Details

This class inherits a constructor from Project::Unpacker::Base

Instance Method Details

#new_stats_objectObject



120
121
122
123
124
# File 'lib/ossert/repositories.rb', line 120

def new_stats_object
  Ossert::QuartersStore.new(
    "Ossert::Stats::#{@stats_type.capitalize}Quarter"
  )
end

#processObject



126
127
128
129
130
131
132
133
134
# File 'lib/ossert/repositories.rb', line 126

def process
  MultiJson.load(
    stored_data
  ).each_with_object(new_stats_object) do |(time, metrics), quarter_store|
    metrics.each_with_object(quarter_store[time.to_i]) do |(metric, value), quarter|
      quarter.send "#{metric}=", coerce_value(value)
    end
  end
end

#sectionObject



116
117
118
# File 'lib/ossert/repositories.rb', line 116

def section
  :quarters
end