Sha256: cdc86e86fa820556da437f13adf0cf24b6ac1c1dd42a4a0119de6250ade4511d

Contents?: true

Size: 652 Bytes

Versions: 153

Compression:

Stored size: 652 Bytes

Contents

module ActionDispatch
  module Http
    class Headers < ::Hash
      @@env_cache = Hash.new { |h,k| h[k] = "HTTP_#{k.upcase.gsub(/-/, '_')}" }

      def initialize(*args)

        if args.size == 1 && args[0].is_a?(Hash)
          super()
          update(args[0])
        else
          super
        end
      end

      def [](header_name)
        if include?(header_name)
          super
        else
          super(env_name(header_name))
        end
      end

      private
        # Converts a HTTP header name to an environment variable name.
        def env_name(header_name)
          @@env_cache[header_name]
        end
    end
  end
end

Version data entries

153 entries across 114 versions & 18 rubygems

Version Path
actionpack-3.2.9.rc3 lib/action_dispatch/http/headers.rb
actionpack-3.2.9.rc2 lib/action_dispatch/http/headers.rb
actionpack-3.2.9.rc1 lib/action_dispatch/http/headers.rb
challah-0.8.1 vendor/bundle/gems/actionpack-3.2.8/lib/action_dispatch/http/headers.rb
challah-rolls-0.1.0 vendor/bundle/gems/actionpack-3.2.7/lib/action_dispatch/http/headers.rb
challah-rolls-0.1.0 vendor/bundle/gems/challah-0.8.0.pre/vendor/bundle/gems/actionpack-3.2.7/lib/action_dispatch/http/headers.rb
challah-rolls-0.1.0 vendor/bundle/gems/actionpack-3.2.8/lib/action_dispatch/http/headers.rb
challah-0.8.0.pre vendor/bundle/gems/actionpack-3.2.7/lib/action_dispatch/http/headers.rb
challah-0.7.1 vendor/bundle/gems/actionpack-3.2.7/lib/action_dispatch/http/headers.rb
challah-0.7.0 vendor/bundle/gems/actionpack-3.2.7/lib/action_dispatch/http/headers.rb
challah-0.7.0.pre2 vendor/bundle/gems/actionpack-3.2.7/lib/action_dispatch/http/headers.rb
actionpack-3.2.8 lib/action_dispatch/http/headers.rb
actionpack-3.2.8.rc2 lib/action_dispatch/http/headers.rb
challah-0.7.0.pre vendor/bundle/gems/actionpack-3.2.7/lib/action_dispatch/http/headers.rb
actionpack-3.2.8.rc1 lib/action_dispatch/http/headers.rb
actionpack-3.2.7 lib/action_dispatch/http/headers.rb
actionpack-3.2.7.rc1 lib/action_dispatch/http/headers.rb
challah-0.6.2 vendor/bundle/gems/actionpack-3.2.2/lib/action_dispatch/http/headers.rb
challah-0.6.2 vendor/bundle/gems/actionpack-3.2.5/lib/action_dispatch/http/headers.rb
challah-0.6.2 vendor/bundle/gems/actionpack-3.2.6/lib/action_dispatch/http/headers.rb