Sha256: 37f21bfa4e33ff64cbec781e466472b04721195ac71be2067ff16c44c5b72f07

Contents?: true

Size: 784 Bytes

Versions: 112

Compression:

Stored size: 784 Bytes

Contents

module Sportradar
  module Api
    class Nfl::Hierarchy < Data
      attr_accessor :response, :id, :name, :alias, :divisions, :conferences, :teams

      def initialize(data)
        @response = data
        @id = data["id"]
        @name = data["name"]
        @alias = data["alias"]
        @conferences = parse_into_array(selector: data["conference"], klass: Sportradar::Api::Nfl::Conference)  if data["conference"]
        @divisions = conferences.flat_map(&:divisions) if conferences&.all? { |conference| conference.divisions }
        @divisions ||= parse_into_array(selector: data["division"], klass: Sportradar::Api::Nfl::Division)  if data["division"]
        @teams = @divisions.flat_map(&:teams) if divisions&.all? {|division| division.teams }
      end

    end
  end
end

Version data entries

112 entries across 112 versions & 1 rubygems

Version Path
sportradar-api-0.9.12 lib/sportradar/api/nfl/hierarchy.rb
sportradar-api-0.9.11 lib/sportradar/api/nfl/hierarchy.rb
sportradar-api-0.9.10 lib/sportradar/api/nfl/hierarchy.rb
sportradar-api-0.9.9 lib/sportradar/api/nfl/hierarchy.rb
sportradar-api-0.9.8 lib/sportradar/api/nfl/hierarchy.rb
sportradar-api-0.9.7 lib/sportradar/api/nfl/hierarchy.rb
sportradar-api-0.9.6 lib/sportradar/api/nfl/hierarchy.rb
sportradar-api-0.9.5 lib/sportradar/api/nfl/hierarchy.rb
sportradar-api-0.9.3 lib/sportradar/api/nfl/hierarchy.rb
sportradar-api-0.9.2 lib/sportradar/api/nfl/hierarchy.rb
sportradar-api-0.9.1 lib/sportradar/api/nfl/hierarchy.rb
sportradar-api-0.9.0 lib/sportradar/api/nfl/hierarchy.rb