Class: Scruber::Core::Extensions::CsvOutput

Inherits:
Base
  • Object
show all
Defined in:
lib/scruber/core/extensions/csv_output.rb

Defined Under Namespace

Modules: CoreMethods

Class Method Summary collapse

Methods inherited from Base

descendants, inherited, register

Class Method Details

._registered_filesObject



49
50
51
# File 'lib/scruber/core/extensions/csv_output.rb', line 49

def _registered_files
  @registered_files ||= {}
end

.close_allObject



53
54
55
56
# File 'lib/scruber/core/extensions/csv_output.rb', line 53

def close_all
  _registered_files.each{ |_,f| f.close }
  @registered_files = {}
end

.csv_out(file_id, fields) ⇒ Object



35
36
37
38
39
40
41
# File 'lib/scruber/core/extensions/csv_output.rb', line 35

def csv_out(file_id, fields)
  if _registered_files.keys.include?(file_id.to_sym)
    _registered_files[file_id.to_sym] << fields
  else
    raise ArgumentError, "file #{file_id.inspect} not registered"
  end
end

.register_csv(file_id, path, options) ⇒ Object



43
44
45
46
47
# File 'lib/scruber/core/extensions/csv_output.rb', line 43

def register_csv(file_id, path, options)
  mode = options.fetch(:mode){ 'wb' }
  options.delete(:mode)
  _registered_files[file_id] = CSV.open(path, mode, options)
end