class Minjs::MinjsCompressor

Attributes

logger[R]

Public Class Methods

engine_initialized?() click to toggle source
# File lib/minjs/minjs_compressor.rb, line 8
def self.engine_initialized?
  defined?(::Minjs)
end

Public Instance Methods

evaluate(context, locals, &block) click to toggle source
# File lib/minjs/minjs_compressor.rb, line 20
def evaluate(context, locals, &block)
  case context.content_type
  when 'application/javascript'
    if logger.info?
      @@c = 0 unless defined?(@@c)
      puts "start: compressing"
      file = "tmp#{@@c}.js"
      output = "tmp#{@@c}.js.min"
      @@c += 1
      puts "source: #{file}"
      puts "output: #{output}"
      tmp = open(file, "w")
      tmp.write(data)
      tmp.close
    end
    #TODO
    t = Minjs::Compressor::Compressor.new(:logger => logger).compress(data).to_js
    if logger.info?
      tmp = open(output, "w")
      tmp.write(t)
      tmp.close
    end
    t
  else
    data
  end
end
initialize_engine() click to toggle source
# File lib/minjs/minjs_compressor.rb, line 12
def initialize_engine
end
prepare() click to toggle source
# File lib/minjs/minjs_compressor.rb, line 15
def prepare
  @logger = Logger.new(STDERR)
  @logger.level = Logger::WARN
end