Class: ServiceWorker::Middleware
- Inherits:
-
Object
- Object
- ServiceWorker::Middleware
- Defined in:
- lib/serviceworker/middleware.rb
Constant Summary collapse
- REQUEST_METHOD =
"REQUEST_METHOD"- GET =
"GET"- HEAD =
"HEAD"
Instance Method Summary collapse
- #call(env) ⇒ Object
-
#initialize(app, opts = {}) ⇒ Middleware
constructor
Initialize the Rack middleware for responding to serviceworker asset requests.
Constructor Details
#initialize(app, opts = {}) ⇒ Middleware
Initialize the Rack middleware for responding to serviceworker asset requests
20 21 22 23 24 25 26 |
# File 'lib/serviceworker/middleware.rb', line 20 def initialize(app, opts = {}) @app = app @opts = opts @headers = default_headers.merge(opts.fetch(:headers, {})) @router = opts.fetch(:routes, ServiceWorker::Router.new) @handler = Handlers.build(@opts.fetch(:handler, nil)) end |
Instance Method Details
#call(env) ⇒ Object
28 29 30 31 32 33 34 35 36 |
# File 'lib/serviceworker/middleware.rb', line 28 def call(env) case env[REQUEST_METHOD] when GET, HEAD route_match = @router.match_route(env) return respond_to_match(route_match, env) if route_match end @app.call(env) end |