class GulpRails::Middleware

Public Class Methods

new(app) click to toggle source
# File lib/gulp_rails/middleware.rb, line 4
def initialize(app)
  @app = app
end

Public Instance Methods

call(env) click to toggle source
# File lib/gulp_rails/middleware.rb, line 8
def call(env)
  result = @app.call(env)
  if GulpRails.options[:enabled] && (GulpRails.options[:development_only] && Rails.env.development?)
    if result[1]['Content-Type'] =~ /\Atext\/html/
      log "-----> Compiling assets with gulp"
      gulp_output = `cd #{GulpRails.options[:directory]} && #{GulpRails.options[:command]}`
      log gulp_output.strip.split("\n").map { |l| "       #{l}"}.join("\n")
      log "-----> Finished compiling with gulp"
    end
  end
  result
end

Private Instance Methods

log(line) click to toggle source
# File lib/gulp_rails/middleware.rb, line 23
def log(line)
  Rails.logger.debug line
end