lib/exporter/exporter.rb in exporter-0.0.3 vs lib/exporter/exporter.rb in exporter-0.1.0
- old
+ new
@@ -1,14 +1,22 @@
module Exporter
class Exporter
def self.export(data, options)
- document = process(data, options)
+ document = exporter.process(data, options)
raise TypeError.new('process method must return an Document object') unless document.kind_of? Document
document
end
+ def self.exporter
+ @exporter ||= self.new
+ end
+
protected
- def self.process(data, options)
+ def process(data, options)
raise NotImplementedError.new("You must implement this process method.")
+ end
+
+ def is_active_record?(data, options)
+ (data.kind_of? ActiveRecord::Relation) || (data.kind_of?(Array) && data[0].kind_of?(ActiveRecord::Base))
end
end
end
\ No newline at end of file