Class: Sportradar::Nfl::Parsers::PlayByPlayParser

Inherits:
Object
  • Object
show all
Defined in:
lib/sportradar/nfl/parsers/play_by_play_parser.rb

Instance Method Summary collapse

Constructor Details

#initialize(game_play_by_play: {}) ⇒ PlayByPlayParser

Returns a new instance of PlayByPlayParser.



5
6
7
# File 'lib/sportradar/nfl/parsers/play_by_play_parser.rb', line 5

def initialize(game_play_by_play: {})
  @game_play_by_play = game_play_by_play['game'] || game_play_by_play
end

Instance Method Details

#awayObject



13
14
15
# File 'lib/sportradar/nfl/parsers/play_by_play_parser.rb', line 13

def away
  game_play_by_play['away_team'] || {}
end

#away_team_idObject



17
18
19
# File 'lib/sportradar/nfl/parsers/play_by_play_parser.rb', line 17

def away_team_id
  away['id']
end

#drivesObject



33
34
35
# File 'lib/sportradar/nfl/parsers/play_by_play_parser.rb', line 33

def drives
  (quarters || []).map(&:drives).flatten
end

#eventsObject



41
42
43
# File 'lib/sportradar/nfl/parsers/play_by_play_parser.rb', line 41

def events
  (drives || []).map(&:events)
end

#game_idObject



9
10
11
# File 'lib/sportradar/nfl/parsers/play_by_play_parser.rb', line 9

def game_id
  game_play_by_play['id']
end

#has_quarters?Boolean

Returns:

  • (Boolean)


29
30
31
# File 'lib/sportradar/nfl/parsers/play_by_play_parser.rb', line 29

def has_quarters?
  quarters.count > 0
end

#homeObject



21
22
23
# File 'lib/sportradar/nfl/parsers/play_by_play_parser.rb', line 21

def home
  game_play_by_play['home_team'] || {}
end

#playsObject



37
38
39
# File 'lib/sportradar/nfl/parsers/play_by_play_parser.rb', line 37

def plays
  (drives || []).map(&:plays)
end

#quartersObject



25
26
27
# File 'lib/sportradar/nfl/parsers/play_by_play_parser.rb', line 25

def quarters
  @quarters ||= build_quarters || []
end