# File lib/rack/conditionalget.rb, line 22
22:     def call(env)
23:       return @app.call(env) unless %w[GET HEAD].include?(env['REQUEST_METHOD'])
24: 
25:       status, headers, body = @app.call(env)
26:       headers = Utils::HeaderHash.new(headers)
27:       if etag_matches?(env, headers) || modified_since?(env, headers)
28:         status = 304
29:         headers.delete('Content-Type')
30:         headers.delete('Content-Length')
31:         body = []
32:       end
33:       [status, headers, body]
34:     end