diff options
author | Łukasz Strzałkowski <lukasz.strzalkowski@gmail.com> | 2013-12-08 22:11:46 +0100 |
---|---|---|
committer | Łukasz Strzałkowski <lukasz.strzalkowski@gmail.com> | 2013-12-08 22:11:46 +0100 |
commit | 9b8c0ff391cdaf23e5a74198ad29f8983df0b9d7 (patch) | |
tree | 51165f76a305ee5fd01d01e42c839c509b4f5106 /actionpack/lib | |
parent | 99975e742eb2636cd814f2c9de21f4bd3c3dbbc7 (diff) | |
download | rails-9b8c0ff391cdaf23e5a74198ad29f8983df0b9d7.tar.gz rails-9b8c0ff391cdaf23e5a74198ad29f8983df0b9d7.tar.bz2 rails-9b8c0ff391cdaf23e5a74198ad29f8983df0b9d7.zip |
Simplify @responses hash initialization
@responses hash needs to be initialized with mime types that we get from
Collector#collect_mimes_from_class_level. Mime::Type class as key and nil as
value. This need to happen before content negotiation. Before that, it was
looping though mime types and executing mime-type-generated method inside
collector (see
AbstractController::Collector#generate_method_for_mime). That approach resulted
in 2 unnecessary method calls for each mime type
collected by Collector#collect_mimes_from_class_level.
Now hash is initialized in place, without usage of Collector#custom method.
Diffstat (limited to 'actionpack/lib')
-rw-r--r-- | actionpack/lib/action_controller/metal/mime_responds.rb | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/actionpack/lib/action_controller/metal/mime_responds.rb b/actionpack/lib/action_controller/metal/mime_responds.rb index b47abb8b8c..ed9d4f589b 100644 --- a/actionpack/lib/action_controller/metal/mime_responds.rb +++ b/actionpack/lib/action_controller/metal/mime_responds.rb @@ -430,7 +430,7 @@ module ActionController #:nodoc: def initialize(mimes) @responses = {} - mimes.each { |mime| send(mime) } + mimes.each { |mime| @responses["Mime::#{mime.upcase}".constantize] = nil } end def any(*args, &block) |