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.22.5 lib/action_dispatch/http/headers.rb
actionpack-3.2.22.4 lib/action_dispatch/http/headers.rb
actionpack-3.2.22.3 lib/action_dispatch/http/headers.rb
actionpack-3.2.22.2 lib/action_dispatch/http/headers.rb
actionpack-3.2.22.1 lib/action_dispatch/http/headers.rb
active_mailer-0.0.10 test/fixtures/dummyapp_rails_3.2/vendor/bundle/ruby/1.9.1/gems/actionpack-3.2.12/lib/action_dispatch/http/headers.rb
actionpack-3.2.22 lib/action_dispatch/http/headers.rb
judge-2.0.5 vendor/bundle/ruby/2.1.0/gems/actionpack-3.2.12/lib/action_dispatch/http/headers.rb
actionpack-3.2.21 lib/action_dispatch/http/headers.rb
actionpack-3.2.20 lib/action_dispatch/http/headers.rb
actionpack-3.2.19 lib/action_dispatch/http/headers.rb
actionpack-3.2.18 lib/action_dispatch/http/headers.rb
actionpack-3.2.17 lib/action_dispatch/http/headers.rb
actionpack-3.2.16 lib/action_dispatch/http/headers.rb
actionpack-3.2.15 lib/action_dispatch/http/headers.rb
actionpack-3.2.15.rc3 lib/action_dispatch/http/headers.rb
actionpack-3.2.15.rc2 lib/action_dispatch/http/headers.rb
actionpack-3.2.15.rc1 lib/action_dispatch/http/headers.rb
actionpack-3.2.14 lib/action_dispatch/http/headers.rb
actionpack-3.2.14.rc2 lib/action_dispatch/http/headers.rb