Sha256: be9ed8150d49052c99af0fe40580959506158a734dd8ec5b7f72dae6423fb280
Contents?: true
Size: 1.1 KB
Versions: 59
Compression:
Stored size: 1.1 KB
Contents
module Sportradar module Api module Basketball class Ncaamb class Conference < Data attr_accessor :response, :id, :name, :alias def initialize(data, **opts) # @response = data @api = opts[:api] @id = data["id"] @name = data["name"] @alias = data["alias"] @assigned_teams = nil @teams_hash = {} update(data, **opts) end def update(data, **opts) create_data(@teams_hash, data["teams"], klass: Team, conference: self, api: @api) # if data["team"] end def teams @assigned_teams || @teams_hash.values end def teams=(array) @assigned_teams = array end def team(code_name) teams_by_name[code_name] end private def teams_by_name @teams_by_name ||= teams.map { |t| [t.alias, t] }.to_h end def conferences teams.flat_map(&:conferences) end end end end end end
Version data entries
59 entries across 59 versions & 1 rubygems