Sha256: c07f25047812fa53d5ee3ef09b3e86790a03a04d168866b81430a71d576cb02c

Contents?: true

Size: 571 Bytes

Versions: 7

Compression:

Stored size: 571 Bytes

Contents

require 'csv'

module UsdaNutrientDatabase
  module Import
    class Base
      attr_reader :directory

      def initialize(directory)
        @directory = directory
      end

      def import
        log_import_started
        CSV.open(
          "#{directory}/#{filename}", 'r:iso-8859-1:utf-8', csv_options
        ) do |csv|
          csv.each { |row| extract_row(row) }
        end
      end

      private

      def filename
        raise NotImplementedError
      end

      def csv_options
        { col_sep: '^', quote_char: '~' }
      end
    end
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
usda-nutrient-database-1.0.1 lib/usda_nutrient_database/import/base.rb
usda-nutrient-database-1.0.0 lib/usda_nutrient_database/import/base.rb
usda-nutrient-database-0.8.1 lib/usda_nutrient_database/import/base.rb
usda-nutrient-database-0.8.0 lib/usda_nutrient_database/import/base.rb
usda-nutrient-database-0.7.0 lib/usda_nutrient_database/import/base.rb
usda-nutrient-database-0.6.0 lib/usda_nutrient_database/import/base.rb
usda-nutrient-database-0.5.0 lib/usda_nutrient_database/import/base.rb