class LoLBase::SummaryStats
Public Class Methods
new(data)
click to toggle source
# File lib/lolbase/data/stats.rb, line 51 def initialize(data) @data = data parse data self end
Public Instance Methods
all()
click to toggle source
# File lib/lolbase/data/stats.rb, line 69 def all return @parsed_data end
find(criteria = {})
click to toggle source
# File lib/lolbase/data/stats.rb, line 61 def find(criteria = {}) raise InvalidArgumentError if criteria.class != Hash if criteria[:name] return @parsed_data.select { |item| item.name == criteria[:name] }.first end nil end
raw_json()
click to toggle source
# File lib/lolbase/data/stats.rb, line 57 def raw_json @data end
Private Instance Methods
parse(data)
click to toggle source
# File lib/lolbase/data/stats.rb, line 75 def parse(data) @parsed_data = [] data = JSON.parse data data["playerStatSummaries"].each do |s| @parsed_data << Summary.new({ name: s["playerStatSummaryType"], last_modified: Time.at(s["modifyDate"] / 1000), stats: s["aggregatedStats"].merge!({ "wins" => s["wins"], "losses" => s["losses"] }) }) end end