Module: Sinatra::CloudflareWorkers

Defined in:
lib/sinatra/cloudflare_workers.rb

Class Method Summary collapse

Class Method Details

.ensure_rack_app!Object

If the user forgot ‘run App` but defined a top-level App < Sinatra::Base, register the Rack handler once at process teardown (Worker isolate load).



20
21
22
23
24
25
26
27
28
29
30
31
32
# File 'lib/sinatra/cloudflare_workers.rb', line 20

def self.ensure_rack_app!
  return unless defined?(Rack::Handler::CloudflareWorkers)

  existing = Rack::Handler::CloudflareWorkers.app
  return existing if existing

  return unless Object.const_defined?(:App, false)

  app = Object.const_get(:App)
  return unless app.is_a?(Class) && app < Sinatra::Base

  Rack::Handler::CloudflareWorkers.run(app)
end