Class: Locca::CollectionWriter

Inherits:
Object
  • Object
show all
Defined in:
lib/locca/collection_writer.rb

Instance Method Summary collapse

Constructor Details

#initialize(file_manager, formatter) ⇒ CollectionWriter

Returns a new instance of CollectionWriter.



27
28
29
30
# File 'lib/locca/collection_writer.rb', line 27

def initialize(file_manager, formatter)
    @file_manager = file_manager
    @formatter = formatter
end

Instance Method Details

#write_to_path(collection, filepath) ⇒ Object



32
33
34
35
36
37
38
39
40
41
42
43
44
45
# File 'lib/locca/collection_writer.rb', line 32

def write_to_path(collection, filepath)
    if not filepath
        raise ArgumentException, 'filepath can\'t be nil'
    end

    FileUtils.mkdir_p(@file_manager.dirname(filepath))

    @file_manager.open(filepath, "w") do |io|
        collection.sorted_each do |item|
            io << @formatter.format_item(item)
            io << "\n"
        end
    end
end