Module: SportsDataApi::Ncaafb

Defined in:
lib/sports_data_api/ncaafb.rb,
lib/sports_data_api/ncaafb/game.rb,
lib/sports_data_api/ncaafb/team.rb,
lib/sports_data_api/ncaafb/week.rb,
lib/sports_data_api/ncaafb/games.rb,
lib/sports_data_api/ncaafb/polls.rb,
lib/sports_data_api/ncaafb/teams.rb,
lib/sports_data_api/ncaafb/venue.rb,
lib/sports_data_api/ncaafb/player.rb,
lib/sports_data_api/ncaafb/season.rb,
lib/sports_data_api/ncaafb/weather.rb,
lib/sports_data_api/ncaafb/division.rb,
lib/sports_data_api/ncaafb/injuries.rb,
lib/sports_data_api/ncaafb/broadcast.rb,
lib/sports_data_api/ncaafb/poll_team.rb,
lib/sports_data_api/ncaafb/team_roster.rb

Defined Under Namespace

Classes: Broadcast, Division, Exception, Game, Games, Injuries, Player, PollTeam, Polls, Season, Team, TeamRoster, Teams, Venue, Weather, Week

Constant Summary collapse

DIR =
File.join(File.dirname(__FILE__), 'ncaafb')
BASE_URL =
'http://api.sportsdatallc.org/ncaafb-%{access_level}%{version}'
DEFAULT_VERSION =
1
SPORT =
:ncaafb

Class Method Summary collapse

Class Method Details

.boxscore(year, season, week, home, away, version = DEFAULT_VERSION) ⇒ Object

Fetches Ncaafb boxscore for a given game



49
50
51
52
53
54
55
56
# File 'lib/sports_data_api/ncaafb.rb', line 49

def self.boxscore(year, season, week, home, away, version = DEFAULT_VERSION)
  season = season.to_s.upcase.to_sym
  raise SportsDataApi::Ncaafb::Exception.new("#{season} is not a valid season") unless Season.valid?(season)

  response = self.response_json(version, "/#{year}/#{season}/#{week}/#{away}/#{home}/boxscore.json")

  return Game.new(year, season, week, response)
end

.game_statistics(year, season, week, home, away, version = DEFAULT_VERSION) ⇒ Object

Fetches statistics for a given Ncaafb game



60
61
62
63
64
65
66
67
# File 'lib/sports_data_api/ncaafb.rb', line 60

def self.game_statistics(year, season, week, home, away, version = DEFAULT_VERSION)
  season = season.to_s.upcase.to_sym
  raise SportsDataApi::Ncaafb::Exception.new("#{season} is not a valid season") unless Season.valid?(season)

  response = self.response_json(version, "/#{year}/#{season}/#{week}/#{away}/#{home}/statistics.json")

  return Game.new(year, season, week, response)
end

.rankings(year, poll, week, version = DEFAULT_VERSION) ⇒ Object

Fetches Ncaafb season ranking for a given year , poll and week



39
40
41
42
43
44
45
# File 'lib/sports_data_api/ncaafb.rb', line 39

def self.rankings(year, poll, week, version = DEFAULT_VERSION)
  raise SportsDataApi::Ncaafb::Exception.new("#{poll} is not a valid poll")  unless Polls.valid_name?(poll)
  raise SportsDataApi::Ncaafb::Exception.new("#{week} nr is not a valid week nr") unless Polls.valid_week?(week)

  response = self.response_json(version,  "/polls/#{poll}/#{year}/#{week}/rankings.json")
  return Polls.new(response)
end

.schedule(year, season, version = DEFAULT_VERSION) ⇒ Object

Fetches Ncaafb season schedule for a given year and season



28
29
30
31
32
33
34
35
# File 'lib/sports_data_api/ncaafb.rb', line 28

def self.schedule(year, season, version = DEFAULT_VERSION)
  season = season.to_s.upcase.to_sym
  raise SportsDataApi::Ncaafb::Exception.new("#{season} is not a valid season") unless Season.valid?(season)

  response = self.response_json(version, "/#{year}/#{season}/schedule.json")

  return Season.new(response)
end

.team_roster(team, version = DEFAULT_VERSION) ⇒ Object

Fetch Ncaafb team roster



79
80
81
82
83
# File 'lib/sports_data_api/ncaafb.rb', line 79

def self.team_roster(team, version = DEFAULT_VERSION)
  response = self.response_json(version, "/teams/#{team}/roster.json")

  return TeamRoster.new(response)
end

.teams(division, version = DEFAULT_VERSION) ⇒ Object

Fetches all Ncaafb teams



71
72
73
74
75
76
# File 'lib/sports_data_api/ncaafb.rb', line 71

def self.teams(division, version = DEFAULT_VERSION)
  raise SportsDataApi::Ncaafb::Exception.new("#{division} is not a valid division") unless Division.valid?(division)
  response = self.response_json(version, "/teams/#{division}/hierarchy.json")

  return Teams.new(response)
end

.weekly(year, season, week, version = DEFAULT_VERSION) ⇒ Object

Fetches Ncaafb weekly schedule for a given year, season and week



87
88
89
90
91
92
93
94
# File 'lib/sports_data_api/ncaafb.rb', line 87

def self.weekly(year, season, week, version = DEFAULT_VERSION)
  season = season.to_s.upcase.to_sym
  raise SportsDataApi::Ncaafb::Exception.new("#{season} is not a valid season") unless Season.valid?(season)

  response = self.response_json(version, "/#{year}/#{season}/#{week}/schedule.json")

  return Games.new(year, season, week, response)
end