Sha256: 30baac4d2bf139feec82c21c9d43409789a47ceabcacaeacaa73006b33217036
Contents?: true
Size: 1.79 KB
Versions: 3
Compression:
Stored size: 1.79 KB
Contents
module SportsDataApi module Nba class Game attr_reader :id, :scheduled, :home, :home_team, :away, :away_team, :status, :venue, :broadcast, :year, :season, :date, :quarter, :clock, :home_team_id, :away_team_id def initialize(args={}) xml = args.fetch(:xml) @year = args[:year] ? args[:year].to_i : nil @season = args[:season] ? args[:season].to_sym : nil @date = args[:date] xml = xml.first if xml.is_a? Nokogiri::XML::NodeSet if xml.is_a? Nokogiri::XML::Element @id = xml['id'] @scheduled = Time.parse xml['scheduled'] @home = xml['home_team'] @away = xml['away_team'] @home_team_id = xml['home_team'] @away_team_id = xml['away_team'] @status = xml['status'] @clock = xml['clock'] @quarter = xml['quarter'] ? xml['quarter'].to_i : nil team_xml = xml.xpath('team') if team_xml.empty? # we are coming from the schedule API @home_team = Team.new(xml.xpath('home')) @away_team = Team.new(xml.xpath('away')) else # we are coming from the Game Summary API @home_team = Team.new(team_xml.first) @away_team = Team.new(team_xml.last) end @venue = Venue.new(xml.xpath('venue')) @broadcast = Broadcast.new(xml.xpath('broadcast')) end end ## # Wrapper for Nba.game_summary # TODO def summary Nba.game_summary(@id) end ## # Wrapper for Nba.pbp (Nba.play_by_play) # TODO def pbp raise NotImplementedError end ## # Wrapper for Nba.boxscore # TODO def boxscore raise NotImplementedError end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
sports_data_api-0.11.6 | lib/sports_data_api/nba/game.rb |
sports_data_api-0.11.5 | lib/sports_data_api/nba/game.rb |
sports_data_api-0.11.3 | lib/sports_data_api/nba/game.rb |