Class: Ingestor::Parser::Csv

Inherits:
Object
  • Object
show all
Includes:
Base
Defined in:
lib/ingestor/parser/csv.rb

Instance Method Summary collapse

Methods included from Base

included, #initialize

Instance Method Details

#options(opts = {}) ⇒ Object



6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# File 'lib/ingestor/parser/csv.rb', line 6

def options(opts={})
  @options = {
    :col_sep            => ",",
    :row_sep            => :auto,
    :quote_char         => '"',
    :field_size_limit   => nil,
    :converters         => nil,
    :unconverted_fields => nil,
    :headers            => false,
    :return_headers     => false,
    :header_converters  => nil,
    :skip_blanks        => false,
    :force_quotes       => false          
  }.merge(opts)
end

#process!Object



26
27
28
29
30
# File 'lib/ingestor/parser/csv.rb', line 26

def process!
  CSV.parse( @document.read, @options ).each do |row|
    @proxy.process_entry @proxy.options[:map_attributes].call( row )
  end
end

#sample!Object



22
23
24
# File 'lib/ingestor/parser/csv.rb', line 22

def sample!
  puts CSV.parse( @document.read, @options ).first
end