Class: Skyrocket::Asset
- Inherits:
-
Object
- Object
- Skyrocket::Asset
- Defined in:
- lib/skyrocket/asset.rb
Instance Attribute Summary collapse
-
#dir ⇒ Object
readonly
Returns the value of attribute dir.
-
#filename ⇒ Object
readonly
Returns the value of attribute filename.
-
#output_dir ⇒ Object
readonly
Returns the value of attribute output_dir.
-
#processor ⇒ Object
readonly
Returns the value of attribute processor.
Instance Method Summary collapse
- #content ⇒ Object
-
#initialize(dir, filename, output_dir, processor) ⇒ Asset
constructor
A new instance of Asset.
- #name ⇒ Object
- #output_name ⇒ Object
- #output_path ⇒ Object
- #raw ⇒ Object
- #to_s ⇒ Object
Constructor Details
#initialize(dir, filename, output_dir, processor) ⇒ Asset
Returns a new instance of Asset.
8 9 10 11 12 13 |
# File 'lib/skyrocket/asset.rb', line 8 def initialize(dir, filename, output_dir, processor) @dir = dir @filename = filename @output_dir = output_dir @processor = processor end |
Instance Attribute Details
#dir ⇒ Object (readonly)
Returns the value of attribute dir.
6 7 8 |
# File 'lib/skyrocket/asset.rb', line 6 def dir @dir end |
#filename ⇒ Object (readonly)
Returns the value of attribute filename.
6 7 8 |
# File 'lib/skyrocket/asset.rb', line 6 def filename @filename end |
#output_dir ⇒ Object (readonly)
Returns the value of attribute output_dir.
6 7 8 |
# File 'lib/skyrocket/asset.rb', line 6 def output_dir @output_dir end |
#processor ⇒ Object (readonly)
Returns the value of attribute processor.
6 7 8 |
# File 'lib/skyrocket/asset.rb', line 6 def processor @processor end |
Instance Method Details
#content ⇒ Object
34 35 36 |
# File 'lib/skyrocket/asset.rb', line 34 def content return @content ||= @processor.process(raw, name) end |
#name ⇒ Object
15 16 17 |
# File 'lib/skyrocket/asset.rb', line 15 def name @processor.post_process_name(@filename) end |
#output_name ⇒ Object
27 28 29 30 31 32 |
# File 'lib/skyrocket/asset.rb', line 27 def output_name digest = Digest::MD5.hexdigest(content) ppn = @processor.post_process_name(@filename) ext = File.extname(ppn) "#{ppn.chomp(ext)}_#{digest}#{ext}" end |
#output_path ⇒ Object
23 24 25 |
# File 'lib/skyrocket/asset.rb', line 23 def output_path @output_dir + "/" + output_name end |
#raw ⇒ Object
38 39 40 |
# File 'lib/skyrocket/asset.rb', line 38 def raw File.read(File.join(@dir, @filename)) end |
#to_s ⇒ Object
19 20 21 |
# File 'lib/skyrocket/asset.rb', line 19 def to_s name end |