Sha256: 54fadaab218e1d36934469e8e59c6f051d667e1ffccdc0d95e5e3b26453dd6a8

Contents?: true

Size: 1017 Bytes

Versions: 125

Compression:

Stored size: 1017 Bytes

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 = create_data({}, 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

125 entries across 125 versions & 1 rubygems

Version Path
sportradar-api-0.10.4 lib/sportradar/api/basketball/ncaamb/conference.rb
sportradar-api-0.10.3 lib/sportradar/api/basketball/ncaamb/conference.rb
sportradar-api-0.10.2 lib/sportradar/api/basketball/ncaamb/conference.rb
sportradar-api-0.10.1 lib/sportradar/api/basketball/ncaamb/conference.rb
sportradar-api-0.10.0 lib/sportradar/api/basketball/ncaamb/conference.rb