class Sprocket

Attributes

group[R]

Public Class Methods

configuration_path() click to toggle source
# File lib/sprocket.rb, line 31
def configuration_path
  File.join(Rails.root, "config", "sprockets.yml")
end
configurations() click to toggle source
# File lib/sprocket.rb, line 26
def configurations
  @conf ||= YAML.load(IO.read(Sprocket.configuration_path)) || {}
  @conf.keys
end
new(group='default') click to toggle source
# File lib/sprocket.rb, line 6
def initialize(group='default')
  group = 'default' if group.nil?
  @group = group.to_sym
end

Public Instance Methods

install_assets() click to toggle source
# File lib/sprocket.rb, line 21
def install_assets
  secretary.install_assets
end
install_script() click to toggle source
# File lib/sprocket.rb, line 15
def install_script
  # /public/sprocktes might not exist yet, and sprockets-1.0.2 throws an exception
  FileUtils.mkdir_p(File.dirname(asset_path))
  concatenation.save_to(asset_path)
end
source() click to toggle source
# File lib/sprocket.rb, line 11
def source
  concatenation.to_s
end

Protected Instance Methods

asset_path() click to toggle source
# File lib/sprocket.rb, line 59
def asset_path
  if group == :default
    File.join(Rails.public_path, "sprockets.js")
  else
    File.join(Rails.public_path, "sprockets", "#{group}.js")
  end
end
concatenation() click to toggle source
# File lib/sprocket.rb, line 54
def concatenation
  secretary.reset! unless source_is_unchanged?
  secretary.concatenation
end
configuration() click to toggle source
# File lib/sprocket.rb, line 41
def configuration
  load_configuration
end
load_configuration() click to toggle source
# File lib/sprocket.rb, line 45
def load_configuration
  @conf ||= YAML.load(IO.read(Sprocket.configuration_path)) || {}
  if @conf[group]
    @conf[group]
  else
    {}
  end
end
secretary() click to toggle source
# File lib/sprocket.rb, line 37
def secretary
  @secretary ||= Sprockets::Secretary.new(configuration.merge(:root => Rails.root))
end
source_is_unchanged?() click to toggle source
# File lib/sprocket.rb, line 67
def source_is_unchanged?
  previous_source_last_modified, @source_last_modified = 
    @source_last_modified, secretary.source_last_modified
    
  previous_source_last_modified == @source_last_modified
end