class ServiceWorker::Handlers::RackHandler

Public Class Methods

new(root = Dir.getwd) click to toggle source
# File lib/serviceworker/handlers/rack_handler.rb, line 6
def initialize(root = Dir.getwd)
  @root = root
end

Public Instance Methods

call(env) click to toggle source
# File lib/serviceworker/handlers/rack_handler.rb, line 10
def call(env)
  path_info = env.fetch("serviceworker.asset_name")

  file_server.call(env.merge("PATH_INFO" => path_info))
end
file_path(path_info) click to toggle source
# File lib/serviceworker/handlers/rack_handler.rb, line 16
def file_path(path_info)
  @root.join(path_info)
end
file_server() click to toggle source
# File lib/serviceworker/handlers/rack_handler.rb, line 20
def file_server
  @file_server ||= ::Rack::File.new(@root)
end