Sha256: 6a77803b3e3ad487e85f0661db48853422b55047a93f3abe57e3d7facb8aa883

Contents?: true

Size: 1.21 KB

Versions: 9

Compression:

Stored size: 1.21 KB

Contents

# encoding: UTF-8

module SportDb


class TeamReader

  include LogUtils::Logging

## make models available by default with namespace
#  e.g. lets you use Usage instead of Model::Usage
  include Models

  def self.from_zip( zip_file, entry_path, more_attribs={} )
    ## get text content from zip
    entry = zip_file.find_entry( entry_path )

    text = entry.get_input_stream().read()
    text = text.force_encoding( Encoding::UTF_8 )

    self.from_string( text, more_attribs )
  end

  def self.from_file( path, more_attribs={} )
    ## note: assume/enfore utf-8 encoding (with or without BOM - byte order mark)
    ## - see textutils/utils.rb
    text = File.read_utf8( path )
    self.from_string( text, more_attribs )
  end

  def self.from_string( text, more_attribs={} )
    TeamReader.new( text, more_attribs )
  end  

  def initialize( text, more_attribs={} )
    ## todo/fix: how to add opts={} ???
    @text = text
    @more_attribs = more_attribs
  end


  def read()
    reader = ValuesReader.from_string( @text, @more_attribs )

    reader.each_line do |new_attributes, values|
      Team.create_or_update_from_values( new_attributes, values )
    end # each lines
  end



end # class TeamReader
end # module SportDb

Version data entries

9 entries across 9 versions & 2 rubygems

Version Path
sportdb-models-1.11.0 lib/sportdb/readers/team.rb
sportdb-models-1.10.1 lib/sportdb/readers/team.rb
sportdb-models-1.10.0 lib/sportdb/readers/team.rb
sportdb-1.9.16 lib/sportdb/readers/team.rb
sportdb-1.9.15 lib/sportdb/readers/team.rb
sportdb-1.9.14 lib/sportdb/readers/team.rb
sportdb-1.9.13 lib/sportdb/readers/team.rb
sportdb-1.9.12 lib/sportdb/readers/team.rb
sportdb-1.9.11 lib/sportdb/readers/team.rb