module Lite::Report::Helpers::Transporters

Private Instance Methods

generate_export!() click to toggle source
# File lib/lite/report/helpers/transporters.rb, line 10
def generate_export!
  CSV.generate(**@csv_options) do |csv|
    @data.each do |row|
      csv << process_export_row!(row)
    end
  end
end
generate_or_stream_export!() click to toggle source
# File lib/lite/report/helpers/transporters.rb, line 18
def generate_or_stream_export!
  return stream_export! if stream?(delete: true)

  generate_export!
end
stream?(delete: false) click to toggle source
# File lib/lite/report/helpers/transporters.rb, line 24
def stream?(delete: false)
  return @csv_options.delete(:stream) if delete

  @csv_options[:stream]
end
stream_export!() click to toggle source
# File lib/lite/report/helpers/transporters.rb, line 30
def stream_export!
  Enumerator.new do |csv|
    csv << CSV.generate_line(headers?(delete: true)) if write_headers?(delete: true)

    @data.each do |row|
      row = process_export_row!(row)
      csv << CSV.generate_line(row, **@csv_options)
    end
  end
end