class Sinatra::Base

def construct_middleware(builder=Rack::Builder.new)

def construct_middleware(builder=Rack::Builder.new)
  builder.use Rack::Session::Cookie if sessions?
  builder.use Rack::CommonLogger if logging?
  builder.use Rack::MethodOverride if methodoverride?
  @middleware.each { |c, args, bk| builder.use(c, *args, &bk) }
  builder.run new
  @callsite = builder.to_app
end