aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack/lib/action_dispatch
diff options
context:
space:
mode:
authorAaron Patterson <aaron.patterson@gmail.com>2012-05-02 12:12:46 -0700
committerAaron Patterson <aaron.patterson@gmail.com>2012-05-02 12:12:46 -0700
commit2914b92048e0cee970d019b333f6e47bf42a4270 (patch)
tree928056761bd239a608aaa15a34d44127745a463e /actionpack/lib/action_dispatch
parent976e7e44ee68cb32f74a8de9b81e18800e42065b (diff)
parent61ba0fe82c440d244d70afc9aad5c8ea9d6e810d (diff)
downloadrails-2914b92048e0cee970d019b333f6e47bf42a4270.tar.gz
rails-2914b92048e0cee970d019b333f6e47bf42a4270.tar.bz2
rails-2914b92048e0cee970d019b333f6e47bf42a4270.zip
Merge pull request #6122 from amerine/add_fetch_to_actiondispatch_http_headers
Enable ActionDispatch::Http::Headers to support fetch
Diffstat (limited to 'actionpack/lib/action_dispatch')
-rw-r--r--actionpack/lib/action_dispatch/http/headers.rb15
1 files changed, 8 insertions, 7 deletions
diff --git a/actionpack/lib/action_dispatch/http/headers.rb b/actionpack/lib/action_dispatch/http/headers.rb
index 040b51e040..a3bb25f75a 100644
--- a/actionpack/lib/action_dispatch/http/headers.rb
+++ b/actionpack/lib/action_dispatch/http/headers.rb
@@ -14,17 +14,18 @@ module ActionDispatch
end
def [](header_name)
- if include?(header_name)
- super
- else
- super(env_name(header_name))
- end
+ super env_name(header_name)
+ end
+
+ def fetch(header_name, default=nil, &block)
+ super env_name(header_name), default, &block
end
private
- # Converts a HTTP header name to an environment variable name.
+ # Converts a HTTP header name to an environment variable name if it is
+ # not contained within the headers hash.
def env_name(header_name)
- @@env_cache[header_name]
+ include?(header_name) ? header_name : @@env_cache[header_name]
end
end
end