class Sprockets::Rails::Task

Attributes

app[RW]

Public Class Methods

new(app = nil) click to toggle source
Calls superclass method
# File lib/sprockets/rails/task.rb, line 11
def initialize(app = nil)
  self.app = app
  super()
end

Public Instance Methods

assets() click to toggle source
Calls superclass method
# File lib/sprockets/rails/task.rb, line 35
def assets
  if app
    app.config.assets.precompile
  else
    super
  end
end
define() click to toggle source
# File lib/sprockets/rails/task.rb, line 51
def define
  namespace :assets do
    %w( environment precompile clean clobber ).each do |task|
      Rake::Task[task].clear if Rake::Task.task_defined?(task)
    end

    # Override this task change the loaded dependencies
    desc "Load asset compile environment"
    task :environment do
      # Load full Rails environment by default
      Rake::Task['environment'].invoke
    end

    desc "Compile all the assets named in config.assets.precompile"
    task :precompile => :environment do
      with_logger do
        manifest.compile(assets)
      end
    end

    desc "Remove old compiled assets"
    task :clean, [:keep] => :environment do |t, args|
      with_logger do
        manifest.clean(Integer(args.keep || self.keep))
      end
    end

    desc "Remove compiled assets"
    task :clobber => :environment do
      with_logger do
        manifest.clobber
      end
    end
  end
end
environment() click to toggle source
Calls superclass method
# File lib/sprockets/rails/task.rb, line 16
def environment
  if app
    # Use initialized app.assets or force build an environment if
    # config.assets.compile is disabled
    app.assets || Sprockets::Railtie.build_environment(app)
  else
    super
  end
end
manifest() click to toggle source
Calls superclass method
# File lib/sprockets/rails/task.rb, line 43
def manifest
  if app
    Sprockets::Manifest.new(index, output, app.config.assets.manifest)
  else
    super
  end
end
output() click to toggle source
Calls superclass method
# File lib/sprockets/rails/task.rb, line 26
def output
  if app
    config = app.config
    File.join(config.paths['public'].first, config.assets.prefix)
  else
    super
  end
end