Class: RailsExternalAssets::AssetFinder
- Inherits:
-
Object
- Object
- RailsExternalAssets::AssetFinder
- Defined in:
- lib/rails_external_assets/asset_finder.rb
Constant Summary collapse
- @@manifest_file =
nil
Class Method Summary collapse
- .asset_manifest ⇒ Object
- .asset_path(path) ⇒ Object
- .clear_manifest_cache ⇒ Object
- .external_asset(path) ⇒ Object
Class Method Details
.asset_manifest ⇒ Object
18 19 20 21 22 23 |
# File 'lib/rails_external_assets/asset_finder.rb', line 18 def asset_manifest return @@manifest_file unless @@manifest_file.nil? manifest_file = RailsExternalAssets.config.manifest_file throw_invalid_manifest(manifest_file) unless File.file? manifest_file @@manifest_file = JSON.parse(File.read manifest_file) end |
.asset_path(path) ⇒ Object
12 13 14 15 16 |
# File 'lib/rails_external_assets/asset_finder.rb', line 12 def asset_path(path) new_path = asset_manifest[path] throw_unknown_path(path, RailsExternalAssets.config.manifest_file) unless new_path new_path end |
.clear_manifest_cache ⇒ Object
25 26 27 |
# File 'lib/rails_external_assets/asset_finder.rb', line 25 def clear_manifest_cache @@manifest_file = nil end |
.external_asset(path) ⇒ Object
7 8 9 10 |
# File 'lib/rails_external_assets/asset_finder.rb', line 7 def external_asset(path) external_path = File.join(RailsExternalAssets.config.base_path, asset_path(path)) block_given? ? yield(external_path) : external_path end |