aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack/lib/action_controller/mime_type.rb
diff options
context:
space:
mode:
Diffstat (limited to 'actionpack/lib/action_controller/mime_type.rb')
-rw-r--r--actionpack/lib/action_controller/mime_type.rb12
1 files changed, 10 insertions, 2 deletions
diff --git a/actionpack/lib/action_controller/mime_type.rb b/actionpack/lib/action_controller/mime_type.rb
index ad2f5aaac5..6a33fdc19a 100644
--- a/actionpack/lib/action_controller/mime_type.rb
+++ b/actionpack/lib/action_controller/mime_type.rb
@@ -1,12 +1,16 @@
module Mime
- class Type < String
+ class Type
def self.lookup(string)
LOOKUP[string]
end
def initialize(string, symbol = nil, synonyms = [])
@symbol, @synonyms = symbol, synonyms
- super(string)
+ @string = string
+ end
+
+ def to_s
+ @string
end
def to_sym
@@ -20,6 +24,10 @@ module Mime
super
end
end
+
+ def ==(mime_type)
+ (@synonyms + [ self ]).any? { |synonym| synonym.to_s == mime_type.to_s } if mime_type
+ end
end
ALL = Type.new "*/*", :all