Class: CsvComposer::Writer

Inherits:
Object
  • Object
show all
Defined in:
lib/csv_composer/writer.rb

Instance Method Summary collapse

Instance Method Details

#write(header_processor, item_processor, collection, columns_mapping, opts = {}) ⇒ Object



6
7
8
9
10
11
12
13
# File 'lib/csv_composer/writer.rb', line 6

def write(header_processor, item_processor, collection, columns_mapping, opts = {})
  CSV.generate do |csv|
    headers = header_processor.process(columns_mapping, opts)
    csv << headers.compact
    opts[:headers] = headers # We are adding the headers in case you need them to process your items
    write_content(csv, item_processor, columns_mapping, collection, opts)
  end
end