class Rack::BodyProxy

def method_missing(method_name, *args, &block)

Delegate missing methods to the wrapped body.
def method_missing(method_name, *args, &block)
  case method_name
  when :to_str
    super
  when :to_ary
    begin
      @body.__send__(method_name, *args, &block)
    ensure
      close
    end
  else
    @body.__send__(method_name, *args, &block)
  end
end