Class: SportDb::Package

Inherits:
Object
  • Object
show all
Defined in:
lib/sportdb/importers.rb

Instance Method Summary collapse

Instance Method Details

#read_csv(start: nil) ⇒ Object

(re)open class - note: adds more machinery; see sportdb-text for first/original/base definition



18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
# File 'lib/sportdb/importers.rb', line 18

def read_csv( start: nil )    ### todo/fix - rename to read_csv !!!!!!
  ## start - season e.g. 1993/94 to start (skip older seasons)
  ## note: assume package holds country/national (club) league
  #  use for importing german bundesliga, english premier league, etc.

  match_by_season( format: 'csv', start: start ).each_with_index do |(season_key, entries),i|
    puts "season [#{i+1}] >#{season_key}<:"

    entries.each do |entry,j|
      ## note: assume datafile basename (without extension) is the league key
      ##  e.g. eng.1, eng.3a, eng.3b, at.1, champs, world, etc.
      league_key = File.basename( entry.name, File.extname( entry.name ) )  ## get basename WITHOUT extension

      pp [entry.name, season_key, league_key]

      event = CsvEventImporter.parse( entry.read, league:  league_key,
                                                  season:  season_key )

      puts "added #{event.name} - from source >#{entry.name}<"
      puts "  #{event.teams.size} teams"
      puts "  #{event.matches.size} matches"
      puts "  #{event.rounds.size} rounds"
    end  # each datafile
  end # each season
end