mime_registry_message_filter.cc revision 5d1f7b1de12d16ceb2c938c56701a3e8bfa558f7
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 : BrowserMessageFilter(MimeRegistryMsgStart) { 14} 15 16MimeRegistryMessageFilter::~MimeRegistryMessageFilter() { 17} 18 19void MimeRegistryMessageFilter::OverrideThreadForMessage( 20 const IPC::Message& message, 21 BrowserThread::ID* thread) { 22 if (IPC_MESSAGE_CLASS(message) == MimeRegistryMsgStart) 23 *thread = BrowserThread::FILE; 24} 25 26bool MimeRegistryMessageFilter::OnMessageReceived(const IPC::Message& message, 27 bool* message_was_ok) { 28 bool handled = true; 29 IPC_BEGIN_MESSAGE_MAP_EX(MimeRegistryMessageFilter, message, *message_was_ok) 30 IPC_MESSAGE_HANDLER(MimeRegistryMsg_GetMimeTypeFromExtension, 31 OnGetMimeTypeFromExtension) 32 IPC_MESSAGE_HANDLER(MimeRegistryMsg_GetMimeTypeFromFile, 33 OnGetMimeTypeFromFile) 34 IPC_MESSAGE_UNHANDLED(handled = false) 35 IPC_END_MESSAGE_MAP() 36 return handled; 37} 38 39void MimeRegistryMessageFilter::OnGetMimeTypeFromExtension( 40 const base::FilePath::StringType& ext, std::string* mime_type) { 41 net::GetMimeTypeFromExtension(ext, mime_type); 42} 43 44void MimeRegistryMessageFilter::OnGetMimeTypeFromFile( 45 const base::FilePath& file_path, std::string* mime_type) { 46 net::GetMimeTypeFromFile(file_path, mime_type); 47} 48 49} // namespace content 50