/usr/lib/ruby/vendor_ruby/merb-core/rack/middleware.rb is in ruby-merb-core 1.1.3+dfsg-2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 | module Merb
module Rack
# Module providing delegation of the deferred? call
#
# Merb handles support for the deferred actions supported
# by some evented web servers such as Thin and Ebb. To
# support this functionality a rack application must respond
# to deferred? method.
#
# Making your middleware inherit from Merb::Rack::Middleware
# or by including this module you'll provide neccessary
# functionality to make this work.
#
# In case you need to merbify some middleware you can just
# include this module. See merb-core/rack/middleware/head.rb or
# merb-core/rack/middleware/content_lenght.rb.
#
# @see Merb::Rack::Head
# @see Merb::Rack::ContentLength
# @see Merb::Rack::Middleware
module DeferrableMiddleware
# @overridable
# @api plugin
def deferred?(env)
@app.deferred?(env) if @app.respond_to?(:deferred?)
end
end
# Base class for the Merb middlewares
#
# When you need to write your own middleware for Merb you should
# this class as a base class to make sure middleware has expected
# interface.
#
# In case you need to Merbify some middleware you can use
# Merb::Rack::DeferrableMiddleware module to add deferred
# actions support.
#
# @see Merb::Rack::DeferrableMiddleware
class Middleware
include Merb::Rack::DeferrableMiddleware
# @overridable
# @api plugin
def initialize(app)
@app = app
end
# @overridable
# @api plugin
def call(env)
@app.call(env)
end
end
end
end
|