Index: chrome/browser/renderer_host/database_dispatcher_host.cc |
=================================================================== |
--- chrome/browser/renderer_host/database_dispatcher_host.cc (revision 30863) |
+++ chrome/browser/renderer_host/database_dispatcher_host.cc (working copy) |
@@ -14,8 +14,7 @@ |
#include "third_party/sqlite/preprocessed/sqlite3.h" |
#endif |
-#include "base/thread.h" |
-#include "chrome/browser/browser_process.h" |
+#include "chrome/browser/chrome_thread.h" |
#include "chrome/browser/renderer_host/resource_message_filter.h" |
#include "chrome/common/render_messages.h" |
#include "webkit/database/vfs_backend.h" |
@@ -61,8 +60,7 @@ |
// Opens the given database file, then schedules |
// a task on the IO thread's message loop to send an IPC back to |
// corresponding renderer process with the file handle. |
-static void DatabaseOpenFile(MessageLoop* io_thread_message_loop, |
- const OpenFileParams& params, |
+static void DatabaseOpenFile(const OpenFileParams& params, |
int32 message_id, |
ResourceMessageFilter* sender) { |
base::PlatformFile target_handle = base::kInvalidPlatformFileValue; |
@@ -77,7 +75,8 @@ |
response_params.file_handle = base::FileDescriptor(target_handle, true); |
response_params.dir_handle = base::FileDescriptor(target_dir_handle, true); |
#endif |
- io_thread_message_loop->PostTask(FROM_HERE, |
+ ChromeThread::PostTask( |
+ ChromeThread::IO, FROM_HERE, |
NewRunnableFunction(SendMessage, sender, |
new ViewMsg_DatabaseOpenFileResponse(message_id, response_params))); |
} |
@@ -86,15 +85,15 @@ |
// Deletes the given database file, then schedules |
// a task on the IO thread's message loop to send an IPC back to |
// corresponding renderer process with the error code. |
-static void DatabaseDeleteFile(MessageLoop* io_thread_message_loop, |
- const DeleteFileParams& params, |
+static void DatabaseDeleteFile(const DeleteFileParams& params, |
int32 message_id, |
int reschedule_count, |
ResourceMessageFilter* sender) { |
// Return an error if the file could not be deleted |
// after kNumDeleteRetries times. |
if (!reschedule_count) { |
- io_thread_message_loop->PostTask(FROM_HERE, |
+ ChromeThread::PostTask( |
+ ChromeThread::IO, FROM_HERE, |
NewRunnableFunction(SendMessage, sender, |
new ViewMsg_DatabaseDeleteFileResponse(message_id, |
SQLITE_IOERR_DELETE))); |
@@ -106,13 +105,14 @@ |
if (error_code == SQLITE_IOERR_DELETE) { |
// If the file could not be deleted, try again. |
MessageLoop::current()->PostDelayedTask(FROM_HERE, |
- NewRunnableFunction(DatabaseDeleteFile, io_thread_message_loop, |
- params, message_id, reschedule_count - 1, sender), |
+ NewRunnableFunction(DatabaseDeleteFile, params, message_id, |
+ reschedule_count - 1, sender), |
kDelayDeleteRetryMs); |
return; |
} |
- io_thread_message_loop->PostTask(FROM_HERE, |
+ ChromeThread::PostTask( |
+ ChromeThread::IO, FROM_HERE, |
NewRunnableFunction(SendMessage, sender, |
new ViewMsg_DatabaseDeleteFileResponse(message_id, error_code))); |
} |
@@ -121,12 +121,12 @@ |
// Gets the attributes of the given database file, then schedules |
// a task on the IO thread's message loop to send an IPC back to |
// corresponding renderer process. |
-static void DatabaseGetFileAttributes(MessageLoop* io_thread_message_loop, |
- const FilePath& file_name, |
+static void DatabaseGetFileAttributes(const FilePath& file_name, |
int32 message_id, |
ResourceMessageFilter* sender) { |
uint32 attributes = VfsBackend::GetFileAttributes(file_name); |
- io_thread_message_loop->PostTask(FROM_HERE, |
+ ChromeThread::PostTask( |
+ ChromeThread::IO, FROM_HERE, |
NewRunnableFunction(SendMessage, sender, |
new ViewMsg_DatabaseGetFileAttributesResponse( |
message_id, attributes))); |
@@ -136,12 +136,12 @@ |
// Gets the size of the given file, then schedules a task |
// on the IO thread's message loop to send an IPC back to |
// the corresponding renderer process. |
-static void DatabaseGetFileSize(MessageLoop* io_thread_message_loop, |
- const FilePath& file_name, |
+static void DatabaseGetFileSize(const FilePath& file_name, |
int32 message_id, |
ResourceMessageFilter* sender) { |
int64 size = VfsBackend::GetFileSize(file_name); |
- io_thread_message_loop->PostTask(FROM_HERE, |
+ ChromeThread::PostTask( |
+ ChromeThread::IO, FROM_HERE, |
NewRunnableFunction(SendMessage, sender, |
new ViewMsg_DatabaseGetFileSizeResponse(message_id, size))); |
} |
@@ -152,28 +152,11 @@ |
const FilePath& profile_path, |
ResourceMessageFilter* resource_message_filter) |
: profile_path_(profile_path), |
- resource_message_filter_(resource_message_filter), |
- file_thread_message_loop_( |
- g_browser_process->file_thread()->message_loop()) { |
+ resource_message_filter_(resource_message_filter) { |
} |
- |
-bool DatabaseDispatcherHost::IsDBMessage(const IPC::Message& message) { |
- switch (message.type()) { |
- case ViewHostMsg_DatabaseOpenFile::ID: |
- case ViewHostMsg_DatabaseDeleteFile::ID: |
- case ViewHostMsg_DatabaseGetFileAttributes::ID: |
- case ViewHostMsg_DatabaseGetFileSize::ID: |
- return true; |
- default: |
- return false; |
- } |
-} |
- |
bool DatabaseDispatcherHost::OnMessageReceived( |
const IPC::Message& message, bool* message_was_ok) { |
- if (!IsDBMessage(message)) |
- return false; |
*message_was_ok = true; |
bool handled = true; |
@@ -230,9 +213,10 @@ |
params.desired_flags = desired_flags; |
params.handle = resource_message_filter_->handle(); |
resource_message_filter_->AddRef(); |
- file_thread_message_loop_->PostTask(FROM_HERE, |
- NewRunnableFunction(DatabaseOpenFile, MessageLoop::current(), |
- params, message_id, resource_message_filter_)); |
+ ChromeThread::PostTask( |
+ ChromeThread::FILE, FROM_HERE, |
+ NewRunnableFunction( |
+ DatabaseOpenFile, params, message_id, resource_message_filter_)); |
} |
void DatabaseDispatcherHost::OnDatabaseDeleteFile( |
@@ -249,10 +233,11 @@ |
params.file_name = db_file_name; |
params.sync_dir = sync_dir; |
resource_message_filter_->AddRef(); |
- file_thread_message_loop_->PostTask(FROM_HERE, |
- NewRunnableFunction(DatabaseDeleteFile, MessageLoop::current(), |
- params, message_id, kNumDeleteRetries, |
- resource_message_filter_)); |
+ ChromeThread::PostTask( |
+ ChromeThread::FILE, FROM_HERE, |
+ NewRunnableFunction( |
+ DatabaseDeleteFile, params, message_id, kNumDeleteRetries, |
+ resource_message_filter_)); |
} |
void DatabaseDispatcherHost::OnDatabaseGetFileAttributes( |
@@ -265,9 +250,11 @@ |
} |
resource_message_filter_->AddRef(); |
- file_thread_message_loop_->PostTask(FROM_HERE, |
- NewRunnableFunction(DatabaseGetFileAttributes, MessageLoop::current(), |
- db_file_name, message_id, resource_message_filter_)); |
+ ChromeThread::PostTask( |
+ ChromeThread::FILE, FROM_HERE, |
+ NewRunnableFunction( |
+ DatabaseGetFileAttributes, db_file_name, message_id, |
+ resource_message_filter_)); |
} |
void DatabaseDispatcherHost::OnDatabaseGetFileSize( |
@@ -280,7 +267,9 @@ |
} |
resource_message_filter_->AddRef(); |
- file_thread_message_loop_->PostTask(FROM_HERE, |
- NewRunnableFunction(DatabaseGetFileSize, MessageLoop::current(), |
- db_file_name, message_id, resource_message_filter_)); |
+ ChromeThread::PostTask( |
+ ChromeThread::FILE, FROM_HERE, |
+ NewRunnableFunction( |
+ DatabaseGetFileSize, db_file_name, message_id, |
+ resource_message_filter_)); |
} |