Class: ActionDispatch::Http::Headers
- Inherits:
-
Object
- Object
- ActionDispatch::Http::Headers
- Includes:
- Enumerable
- Defined in:
- lib/action_dispatch/http/headers.rb
Constant Summary collapse
- CGI_VARIABLES =
%w( CONTENT_TYPE CONTENT_LENGTH HTTPS AUTH_TYPE GATEWAY_INTERFACE PATH_INFO PATH_TRANSLATED QUERY_STRING REMOTE_ADDR REMOTE_HOST REMOTE_IDENT REMOTE_USER REQUEST_METHOD SCRIPT_NAME SERVER_NAME SERVER_PORT SERVER_PROTOCOL SERVER_SOFTWARE )
- HTTP_HEADER =
/\A[A-Za-z0-9-]+\z/
Instance Attribute Summary collapse
-
#env ⇒ Object
readonly
Returns the value of attribute env.
Instance Method Summary collapse
- #[](key) ⇒ Object
- #[]=(key, value) ⇒ Object
- #each(&block) ⇒ Object
- #fetch(key, *args, &block) ⇒ Object
-
#initialize(env = {}) ⇒ Headers
constructor
A new instance of Headers.
- #key?(key) ⇒ Boolean (also: #include?)
- #merge(headers_or_env) ⇒ Object
- #merge!(headers_or_env) ⇒ Object
Constructor Details
#initialize(env = {}) ⇒ Headers
Returns a new instance of Headers.
17 18 19 |
# File 'lib/action_dispatch/http/headers.rb', line 17 def initialize(env = {}) @env = env end |
Instance Attribute Details
#env ⇒ Object (readonly)
Returns the value of attribute env.
15 16 17 |
# File 'lib/action_dispatch/http/headers.rb', line 15 def env @env end |
Instance Method Details
#[](key) ⇒ Object
21 22 23 |
# File 'lib/action_dispatch/http/headers.rb', line 21 def [](key) @env[env_name(key)] end |
#[]=(key, value) ⇒ Object
25 26 27 |
# File 'lib/action_dispatch/http/headers.rb', line 25 def []=(key, value) @env[env_name(key)] = value end |
#each(&block) ⇒ Object
38 39 40 |
# File 'lib/action_dispatch/http/headers.rb', line 38 def each(&block) @env.each(&block) end |
#fetch(key, *args, &block) ⇒ Object
34 35 36 |
# File 'lib/action_dispatch/http/headers.rb', line 34 def fetch(key, *args, &block) @env.fetch env_name(key), *args, &block end |
#key?(key) ⇒ Boolean Also known as: include?
29 30 31 |
# File 'lib/action_dispatch/http/headers.rb', line 29 def key?(key) @env.key? env_name(key) end |
#merge(headers_or_env) ⇒ Object
42 43 44 45 46 |
# File 'lib/action_dispatch/http/headers.rb', line 42 def merge(headers_or_env) headers = Http::Headers.new(env.dup) headers.merge!(headers_or_env) headers end |
#merge!(headers_or_env) ⇒ Object
48 49 50 51 52 |
# File 'lib/action_dispatch/http/headers.rb', line 48 def merge!(headers_or_env) headers_or_env.each do |key, value| self[env_name(key)] = value end end |