Class: Condenser::FileWriter

Inherits:
Object
  • Object
show all
Defined in:
lib/condenser/writers/file_writer.rb

Overview

Writes an asset file to disk

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(mime_types: nil) ⇒ FileWriter

Returns a new instance of FileWriter.



10
11
12
# File 'lib/condenser/writers/file_writer.rb', line 10

def initialize(mime_types: nil)
  @mime_types = mime_types || '*/*'
end

Instance Attribute Details

#mime_typesObject (readonly)

Returns the value of attribute mime_types.



8
9
10
# File 'lib/condenser/writers/file_writer.rb', line 8

def mime_types
  @mime_types
end

Instance Method Details

#call(output_directory, asset) ⇒ Object



22
23
24
25
26
27
28
29
30
# File 'lib/condenser/writers/file_writer.rb', line 22

def call(output_directory, asset)
  filename = File.join(output_directory, asset.path)
  FileUtils.mkdir_p(File.dirname(filename))
  Condenser::Utils.atomic_write(filename) do |file|
    file.write(asset.source)
  end
  
  [asset.filename]
end

#exist?(asset) ⇒ Boolean

Returns:

  • (Boolean)


18
19
20
# File 'lib/condenser/writers/file_writer.rb', line 18

def exist?(asset)
  ::File.exist?(path(asset))
end

#path(asset) ⇒ Object



14
15
16
# File 'lib/condenser/writers/file_writer.rb', line 14

def path(asset)
  asset.path
end