• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 #include "mojo/examples/html_viewer/webmimeregistry_impl.h"
6 
7 #include "base/files/file_path.h"
8 #include "base/strings/string_util.h"
9 #include "base/strings/sys_string_conversions.h"
10 #include "base/strings/utf_string_conversions.h"
11 #include "net/base/mime_util.h"
12 #include "third_party/WebKit/public/platform/WebString.h"
13 
14 namespace mojo {
15 namespace examples {
16 namespace {
17 
ToASCIIOrEmpty(const blink::WebString & string)18 std::string ToASCIIOrEmpty(const blink::WebString& string) {
19   return base::IsStringASCII(string) ? base::UTF16ToASCII(string)
20                                      : std::string();
21 }
22 
23 }  // namespace
24 
supportsMIMEType(const blink::WebString & mime_type)25 blink::WebMimeRegistry::SupportsType WebMimeRegistryImpl::supportsMIMEType(
26     const blink::WebString& mime_type) {
27   return net::IsSupportedMimeType(ToASCIIOrEmpty(mime_type)) ?
28       blink::WebMimeRegistry::IsSupported :
29       blink::WebMimeRegistry::IsNotSupported;
30 }
31 
supportsImageMIMEType(const blink::WebString & mime_type)32 blink::WebMimeRegistry::SupportsType WebMimeRegistryImpl::supportsImageMIMEType(
33     const blink::WebString& mime_type) {
34   return net::IsSupportedImageMimeType(ToASCIIOrEmpty(mime_type)) ?
35       blink::WebMimeRegistry::IsSupported :
36       blink::WebMimeRegistry::IsNotSupported;
37 }
38 
39 blink::WebMimeRegistry::SupportsType
supportsJavaScriptMIMEType(const blink::WebString & mime_type)40     WebMimeRegistryImpl::supportsJavaScriptMIMEType(
41     const blink::WebString& mime_type) {
42   return net::IsSupportedJavascriptMimeType(ToASCIIOrEmpty(mime_type)) ?
43       blink::WebMimeRegistry::IsSupported :
44       blink::WebMimeRegistry::IsNotSupported;
45 }
46 
supportsMediaMIMEType(const blink::WebString & mime_type,const blink::WebString & codecs,const blink::WebString & key_system)47 blink::WebMimeRegistry::SupportsType WebMimeRegistryImpl::supportsMediaMIMEType(
48     const blink::WebString& mime_type,
49     const blink::WebString& codecs,
50     const blink::WebString& key_system) {
51   NOTIMPLEMENTED();
52   return IsNotSupported;
53 }
54 
supportsMediaSourceMIMEType(const blink::WebString & mime_type,const blink::WebString & codecs)55 bool WebMimeRegistryImpl::supportsMediaSourceMIMEType(
56     const blink::WebString& mime_type,
57     const blink::WebString& codecs) {
58   NOTIMPLEMENTED();
59   return false;
60 }
61 
supportsEncryptedMediaMIMEType(const blink::WebString & key_system,const blink::WebString & mime_type,const blink::WebString & codecs)62 bool WebMimeRegistryImpl::supportsEncryptedMediaMIMEType(
63     const blink::WebString& key_system,
64     const blink::WebString& mime_type,
65     const blink::WebString& codecs) {
66   NOTIMPLEMENTED();
67   return false;
68 }
69 
70 blink::WebMimeRegistry::SupportsType
supportsNonImageMIMEType(const blink::WebString & mime_type)71     WebMimeRegistryImpl::supportsNonImageMIMEType(
72     const blink::WebString& mime_type) {
73   return net::IsSupportedNonImageMimeType(ToASCIIOrEmpty(mime_type)) ?
74       blink::WebMimeRegistry::IsSupported :
75       blink::WebMimeRegistry::IsNotSupported;
76 }
77 
mimeTypeForExtension(const blink::WebString & file_extension)78 blink::WebString WebMimeRegistryImpl::mimeTypeForExtension(
79     const blink::WebString& file_extension) {
80   NOTIMPLEMENTED();
81   return blink::WebString();
82 }
83 
wellKnownMimeTypeForExtension(const blink::WebString & file_extension)84 blink::WebString WebMimeRegistryImpl::wellKnownMimeTypeForExtension(
85     const blink::WebString& file_extension) {
86   NOTIMPLEMENTED();
87   return blink::WebString();
88 }
89 
mimeTypeFromFile(const blink::WebString & file_path)90 blink::WebString WebMimeRegistryImpl::mimeTypeFromFile(
91     const blink::WebString& file_path) {
92   NOTIMPLEMENTED();
93   return blink::WebString();
94 }
95 
96 }  // namespace examples
97 }  // namespace mojo
98