Module: Bookie::Formatters::CommaDump

Defined in:
lib/bookie/formatters/comma_dump.rb

Overview

Formats data as a CSV file

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.quote(val) ⇒ Object

Quotes a value for use as a CSV element



25
26
27
# File 'lib/bookie/formatters/comma_dump.rb', line 25

def self.quote(val)
  %{"#{val.to_s.gsub('"', '""')}"}
end

Instance Method Details

#do_print_jobs(jobs) ⇒ Object



16
17
18
19
20
21
# File 'lib/bookie/formatters/comma_dump.rb', line 16

def do_print_jobs(jobs)
  @file.puts Formatter::DETAILS_FIELD_LABELS.join(', ')
  fields_for_each_job(jobs) do |fields|
    @file.puts fields.map{ |s| CommaDump.quote(s) }.join(', ')
  end
end

#do_print_summary(field_values) ⇒ Object



10
11
12
13
14
# File 'lib/bookie/formatters/comma_dump.rb', line 10

def do_print_summary(field_values)
  Formatter::SUMMARY_FIELD_LABELS.zip(field_values) do |label, value|
    @file.puts "#{CommaDump.quote(label)}, #{CommaDump.quote(value)}"
  end
end

#open(filename) ⇒ Object



6
7
8
# File 'lib/bookie/formatters/comma_dump.rb', line 6

def open(filename)
  @file = File.open(filename)
end