module Xporter::Exporter::Generator

Public Instance Methods

generate(*args) click to toggle source
# File lib/xporter/exporter/generator.rb, line 7
def generate(*args)
  new.generate(*args)
end

Private Instance Methods

content() click to toggle source
# File lib/xporter/exporter/generator.rb, line 32
def content
  each_item.map do |record|
    record = transform(record) if transform?
    record = decorate(record) if decorator?

    columns.map do |column|
      column.data(record)
    end
  end
end
each_item(&block) click to toggle source
# File lib/xporter/exporter/generator.rb, line 43
def each_item(&block)
  return @collection.each.lazy unless @collection.respond_to?(:find_each)

  @collection.find_each(batch_size: self.class._batch_size).lazy
end
headers() click to toggle source
# File lib/xporter/exporter/generator.rb, line 26
def headers
  columns.map do |column|
    column.title_from(self.class._resource_class)
  end
end