Sha256: b7cf0762d1a894359d2c1cd7c23a2c8fbe80196b32fcb72f9cfb11c0e7dc58c1

Contents?: true

Size: 1017 Bytes

Versions: 125

Compression:

Stored size: 1017 Bytes

Contents

module Sportradar
  module Api
    module Basketball
      class Ncaamb
        class Division < 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"]
            update(data, **opts)
          end

          def update(data, **opts)
            @conferences_hash = create_data({}, data["conferences"], klass: Conference, division: self, api: @api) if data["conferences"]
          end

          def conferences
            @conferences_hash.values
          end

          def conference(code_name)
            conferences_by_name[code_name]
          end

          def conferences_by_name
            @conferences_by_name ||= conferences.map { |c| [c.alias, c] }.to_h
          end

          def teams
            conferences.flat_map(&:teams)
          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/division.rb
sportradar-api-0.10.3 lib/sportradar/api/basketball/ncaamb/division.rb
sportradar-api-0.10.2 lib/sportradar/api/basketball/ncaamb/division.rb
sportradar-api-0.10.1 lib/sportradar/api/basketball/ncaamb/division.rb
sportradar-api-0.10.0 lib/sportradar/api/basketball/ncaamb/division.rb