# File lib/jekyll_asset_pipeline/pipeline.rb, line 18 def run(manifest, prefix, source, destination, tag, type, config) # Get hash for pipeline hash = hash(source, manifest, config) # Check if pipeline has been cached if cache.has_key?(hash) # Return cached pipeline and cached status return cache[hash], true else begin puts "Processing '#{tag}' manifest '#{prefix}'" # Create and process new pipeline pipeline = self.new(manifest, prefix, source, destination, type, config) pipeline.assets.each do |asset| puts "Saved '#{asset.filename}' to '#{destination}/#{asset.output_path}'" end # Add processed pipeline to cache cache[hash] = pipeline # Return newly processed pipeline and cached status return pipeline, false rescue Exception => e # Add exception to cache cache[hash] = e # Re-raise the exception raise e end end end