mime_registry_message_filter.cc revision 5821806d5e7f356e8fa4b058a389a808ea183019
1// Copyright (c) 2011 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 "content/browser/mime_registry_message_filter.h" 6 7#include "content/common/mime_registry_messages.h" 8#include "net/base/mime_util.h" 9 10namespace content { 11 12MimeRegistryMessageFilter::MimeRegistryMessageFilter() { 13} 14 15MimeRegistryMessageFilter::~MimeRegistryMessageFilter() { 16} 17 18void MimeRegistryMessageFilter::OverrideThreadForMessage( 19 const IPC::Message& message, 20 BrowserThread::ID* thread) { 21 if (IPC_MESSAGE_CLASS(message) == MimeRegistryMsgStart) 22 *thread = BrowserThread::FILE; 23} 24 25bool MimeRegistryMessageFilter::OnMessageReceived(const IPC::Message& message, 26 bool* message_was_ok) { 27 bool handled = true; 28 IPC_BEGIN_MESSAGE_MAP_EX(MimeRegistryMessageFilter, message, *message_was_ok) 29 IPC_MESSAGE_HANDLER(MimeRegistryMsg_GetMimeTypeFromExtension, 30 OnGetMimeTypeFromExtension) 31 IPC_MESSAGE_HANDLER(MimeRegistryMsg_GetMimeTypeFromFile, 32 OnGetMimeTypeFromFile) 33 IPC_MESSAGE_HANDLER(MimeRegistryMsg_GetPreferredExtensionForMimeType, 34 OnGetPreferredExtensionForMimeType) 35 IPC_MESSAGE_UNHANDLED(handled = false) 36 IPC_END_MESSAGE_MAP() 37 return handled; 38} 39 40void MimeRegistryMessageFilter::OnGetMimeTypeFromExtension( 41 const FilePath::StringType& ext, std::string* mime_type) { 42 net::GetMimeTypeFromExtension(ext, mime_type); 43} 44 45void MimeRegistryMessageFilter::OnGetMimeTypeFromFile( 46 const FilePath& file_path, std::string* mime_type) { 47 net::GetMimeTypeFromFile(file_path, mime_type); 48} 49 50void MimeRegistryMessageFilter::OnGetPreferredExtensionForMimeType( 51 const std::string& mime_type, FilePath::StringType* extension) { 52 net::GetPreferredExtensionForMimeType(mime_type, extension); 53} 54 55} // namespace content 56