Class: Sportradar::Nba::Parsers::PlayByPlayParser

Inherits:
Object
  • Object
show all
Defined in:
lib/sportradar/nba/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/nba/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/nba/parsers/play_by_play_parser.rb', line 13

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

#away_team_idObject



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

def away_team_id
  away['id']
end

#eventsObject



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

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

#foulsObject



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

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

#game_idObject



9
10
11
# File 'lib/sportradar/nba/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/nba/parsers/play_by_play_parser.rb', line 29

def has_quarters?
  quarters.count > 0
end

#homeObject



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

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

#on_court_playersObject



49
50
51
# File 'lib/sportradar/nba/parsers/play_by_play_parser.rb', line 49

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

#quartersObject



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

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

#scoring_playsObject



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

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

#stoppagesObject



45
46
47
# File 'lib/sportradar/nba/parsers/play_by_play_parser.rb', line 45

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