Sha256: 6e2a54d8caad2bcbe3f4c529721c129f3b204b6c41c2a13b8d8540966f685a8f

Contents?: true

Size: 1.18 KB

Versions: 112

Compression:

Stored size: 1.18 KB

Contents

module Sportradar
  module Api
    class Nfl::Season < Data
      attr_accessor :response, :id, :year, :type, :name, :weeks, :injuries, :team, :conferences, :divisions, :teams

      def initialize(data)
        @response = data
        @id = data["id"]
        @year = data["year"]
        @type = data["type"]
        @name = data["name"]
        @team = Sportradar::Api::Nfl::Team.new(data["team"]) if data["team"].is_a?(Hash)
        @injuries = data["injuries"]["team"].map {|team| Sportradar::Api::Nfl::Team.new team } if data["injuries"] && data["injuries"]["team"]
        @weeks = parse_into_array(selector: response["week"], klass: Sportradar::Api::Nfl::Week)  if response["week"]
        @conferences = parse_into_array(selector: response["conference"], klass: Sportradar::Api::Nfl::Conference)  if response["conference"]
        @divisions = conferences.flat_map(&:divisions) if conferences&.all? { |conference| conference.divisions }
        @divisions ||= parse_into_array(selector: response["division"], klass: Sportradar::Api::Nfl::Division)  if response["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.10.15 lib/sportradar/api/nfl/season.rb
sportradar-api-0.10.14 lib/sportradar/api/nfl/season.rb
sportradar-api-0.10.13 lib/sportradar/api/nfl/season.rb
sportradar-api-0.10.12 lib/sportradar/api/nfl/season.rb
sportradar-api-0.10.11 lib/sportradar/api/nfl/season.rb
sportradar-api-0.10.10 lib/sportradar/api/nfl/season.rb
sportradar-api-0.10.9 lib/sportradar/api/nfl/season.rb
sportradar-api-0.10.8 lib/sportradar/api/nfl/season.rb
sportradar-api-0.10.7 lib/sportradar/api/nfl/season.rb
sportradar-api-0.10.6 lib/sportradar/api/nfl/season.rb
sportradar-api-0.10.5 lib/sportradar/api/nfl/season.rb
sportradar-api-0.10.4 lib/sportradar/api/nfl/season.rb
sportradar-api-0.10.3 lib/sportradar/api/nfl/season.rb
sportradar-api-0.10.2 lib/sportradar/api/nfl/season.rb
sportradar-api-0.10.1 lib/sportradar/api/nfl/season.rb
sportradar-api-0.10.0 lib/sportradar/api/nfl/season.rb
sportradar-api-0.9.59 lib/sportradar/api/nfl/season.rb
sportradar-api-0.9.58 lib/sportradar/api/nfl/season.rb
sportradar-api-0.9.57 lib/sportradar/api/nfl/season.rb
sportradar-api-0.9.56 lib/sportradar/api/nfl/season.rb