Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(209)

Unified Diff: net/base/mime_util.cc

Issue 114060: Handle mimetype queries for media files... (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 11 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « net/base/mime_util.h ('k') | webkit/api/public/WebMimeRegistry.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: net/base/mime_util.cc
===================================================================
--- net/base/mime_util.cc (revision 17048)
+++ net/base/mime_util.cc (working copy)
@@ -1,4 +1,4 @@
-// Copyright (c) 2006-2008 The Chromium Authors. All rights reserved.
+// Copyright (c) 2006-2009 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -26,6 +26,7 @@
std::string* mime_type) const;
bool IsSupportedImageMimeType(const char* mime_type) const;
+ bool IsSupportedMediaMimeType(const char* mime_type) const;
bool IsSupportedNonImageMimeType(const char* mime_type) const;
bool IsSupportedJavascriptMimeType(const char* mime_type) const;
@@ -47,6 +48,7 @@
typedef base::hash_set<std::string> MimeMappings;
MimeMappings image_map_;
+ MimeMappings media_map_;
MimeMappings non_image_map_;
MimeMappings javascript_map_;
MimeMappings view_source_map_;
@@ -166,6 +168,28 @@
"image/x-xbitmap" // xbm
};
+// TODO(hclam): Integrate this list with |secondary_mappings| above.
+static const char* const supported_media_types[] = {
+ // Ogg.
+ "audio/ogg",
+ "video/ogg",
+
+ // MPEG-4.
+ "application/mp4",
+ "audio/mp4",
+ "audio/x-m4a",
+ "video/mp4",
+ "video/x-m4v",
+
+ // MP3.
+ // TODO(hclam): may add "audio/mpeg" and "audio/x-mp3".
+ "audio/mp3",
+
+ // AAC.
+ "audio/aac",
+ "audio/x-aac"
+};
+
// Note: does not include javascript types list (see supported_javascript_types)
static const char* const supported_non_image_types[] = {
"text/html",
@@ -217,12 +241,18 @@
for (size_t i = 0; i < arraysize(supported_image_types); ++i)
image_map_.insert(supported_image_types[i]);
- // Initialize the supported non-image types
+ // Initialize the supported non-image types.
for (size_t i = 0; i < arraysize(supported_non_image_types); ++i)
non_image_map_.insert(supported_non_image_types[i]);
for (size_t i = 0; i < arraysize(supported_javascript_types); ++i)
non_image_map_.insert(supported_javascript_types[i]);
+ for (size_t i = 0; i < arraysize(supported_media_types); ++i)
+ non_image_map_.insert(supported_media_types[i]);
+ // Initialize the supported media types.
+ for (size_t i = 0; i < arraysize(supported_media_types); ++i)
+ media_map_.insert(supported_media_types[i]);
+
for (size_t i = 0; i < arraysize(supported_javascript_types); ++i)
javascript_map_.insert(supported_javascript_types[i]);
@@ -234,6 +264,10 @@
return image_map_.find(mime_type) != image_map_.end();
}
+bool MimeUtil::IsSupportedMediaMimeType(const char* mime_type) const {
+ return media_map_.find(mime_type) != media_map_.end();
+}
+
bool MimeUtil::IsSupportedNonImageMimeType(const char* mime_type) const {
return non_image_map_.find(mime_type) != non_image_map_.end();
}
@@ -316,6 +350,10 @@
return GetMimeUtil()->IsSupportedImageMimeType(mime_type);
}
+bool IsSupportedMediaMimeType(const char* mime_type) {
+ return GetMimeUtil()->IsSupportedMediaMimeType(mime_type);
+}
+
bool IsSupportedNonImageMimeType(const char* mime_type) {
return GetMimeUtil()->IsSupportedNonImageMimeType(mime_type);
}
« no previous file with comments | « net/base/mime_util.h ('k') | webkit/api/public/WebMimeRegistry.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698