class Maskara::Middleware
Public Class Methods
new(app)
click to toggle source
# File lib/maskara/middleware.rb, line 3 def initialize(app) @app = app end
Public Instance Methods
call(env)
click to toggle source
# File lib/maskara/middleware.rb, line 7 def call(env) new_env = env if maskara_path? env['PATH_INFO'] log "Maskara path: #{env['PATH_INFO']}" new_env = env.dup new_env['MASKARA_REQUEST'] = true new_env['REQUEST_URI'] = new_env['PATH_INFO'] = env['PATH_INFO'].sub(maskara_regex, '/') new_env['REQUEST_URI'] += "?#{env['QUERY_STRING']}" unless env['QUERY_STRING'].nil? || env['QUERY_STRING'].empty? end @app.call(new_env) end
log(msg)
click to toggle source
# File lib/maskara/middleware.rb, line 27 def log msg if (defined? Rails) Rails.logger.debug msg else puts msg end end
maskara_path?(path)
click to toggle source
# File lib/maskara/middleware.rb, line 19 def maskara_path? path path =~ maskara_regex end
maskara_regex()
click to toggle source
# File lib/maskara/middleware.rb, line 23 def maskara_regex /\A(\/#{Maskara.path_stub}\/)/ end