summaryrefslogtreecommitdiffstats
path: root/webkit
diff options
context:
space:
mode:
authormichaeln@google.com <michaeln@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2011-11-14 20:09:21 +0000
committermichaeln@google.com <michaeln@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2011-11-14 20:09:21 +0000
commit5dde1490d124a7574a4c562ddd4996b98a46a991 (patch)
treee32afcecb83eb106b3a63cebc45680b4cfba4f01 /webkit
parentb9616d59cf31cc4aa9e7802dc7252d2e36174ccc (diff)
downloadchromium_src-5dde1490d124a7574a4c562ddd4996b98a46a991.zip
chromium_src-5dde1490d124a7574a4c562ddd4996b98a46a991.tar.gz
chromium_src-5dde1490d124a7574a4c562ddd4996b98a46a991.tar.bz2
Take 2, base::Bind cleanup in SimpleDatabaseSystem
Review URL: http://codereview.chromium.org/8510036 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@109943 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'webkit')
-rw-r--r--webkit/support/simple_database_system.cc92
-rw-r--r--webkit/support/simple_database_system.h3
2 files changed, 55 insertions, 40 deletions
diff --git a/webkit/support/simple_database_system.cc b/webkit/support/simple_database_system.cc
index 73a2452..f1887fd 100644
--- a/webkit/support/simple_database_system.cc
+++ b/webkit/support/simple_database_system.cc
@@ -5,6 +5,8 @@
#include "webkit/support/simple_database_system.h"
#include "base/auto_reset.h"
+#include "base/bind.h"
+#include "base/bind_helpers.h"
#include "base/file_util.h"
#include "base/message_loop.h"
#include "base/message_loop_proxy.h"
@@ -45,9 +47,10 @@ SimpleDatabaseSystem::SimpleDatabaseSystem()
SimpleDatabaseSystem::~SimpleDatabaseSystem() {
base::WaitableEvent done_event(false, false);
- db_thread_proxy_->PostTask(FROM_HERE,
- NewRunnableMethod(this, &SimpleDatabaseSystem::ThreadCleanup,
- &done_event));
+ db_thread_proxy_->PostTask(
+ FROM_HERE,
+ base::Bind(&SimpleDatabaseSystem::ThreadCleanup,
+ base::Unretained(this), &done_event));
done_event.Wait();
instance_ = NULL;
}
@@ -56,37 +59,44 @@ void SimpleDatabaseSystem::databaseOpened(const WebKit::WebDatabase& database) {
string16 origin_identifier = database.securityOrigin().databaseIdentifier();
string16 database_name = database.name();
open_connections_->AddOpenConnection(origin_identifier, database_name);
- db_thread_proxy_->PostTask(FROM_HERE,
- NewRunnableMethod(this, &SimpleDatabaseSystem::DatabaseOpened,
- origin_identifier,
- database_name, database.displayName(),
- database.estimatedSize()));
+ db_thread_proxy_->PostTask(
+ FROM_HERE,
+ base::Bind(&SimpleDatabaseSystem::DatabaseOpened,
+ base::Unretained(this),
+ origin_identifier,
+ database_name, database.displayName(),
+ database.estimatedSize()));
}
void SimpleDatabaseSystem::databaseModified(
const WebKit::WebDatabase& database) {
- db_thread_proxy_->PostTask(FROM_HERE,
- NewRunnableMethod(this, &SimpleDatabaseSystem::DatabaseModified,
- database.securityOrigin().databaseIdentifier(),
- database.name()));
+ db_thread_proxy_->PostTask(
+ FROM_HERE,
+ base::Bind(&SimpleDatabaseSystem::DatabaseModified,
+ base::Unretained(this),
+ database.securityOrigin().databaseIdentifier(),
+ database.name()));
}
void SimpleDatabaseSystem::databaseClosed(const WebKit::WebDatabase& database) {
string16 origin_identifier = database.securityOrigin().databaseIdentifier();
string16 database_name = database.name();
- db_thread_proxy_->PostTask(FROM_HERE,
- NewRunnableMethod(this, &SimpleDatabaseSystem::DatabaseClosed,
- origin_identifier, database_name));
+ db_thread_proxy_->PostTask(
+ FROM_HERE,
+ base::Bind(&SimpleDatabaseSystem::DatabaseClosed,
+ base::Unretained(this), origin_identifier, database_name));
}
base::PlatformFile SimpleDatabaseSystem::OpenFile(
const string16& vfs_file_name, int desired_flags) {
base::PlatformFile result = base::kInvalidPlatformFileValue;
base::WaitableEvent done_event(false, false);
- db_thread_proxy_->PostTask(FROM_HERE,
- NewRunnableMethod(this, &SimpleDatabaseSystem::VfsOpenFile,
- vfs_file_name, desired_flags,
- &result, &done_event));
+ db_thread_proxy_->PostTask(
+ FROM_HERE,
+ base::Bind(&SimpleDatabaseSystem::VfsOpenFile,
+ base::Unretained(this),
+ vfs_file_name, desired_flags,
+ &result, &done_event));
done_event.Wait();
return result;
}
@@ -95,10 +105,12 @@ int SimpleDatabaseSystem::DeleteFile(
const string16& vfs_file_name, bool sync_dir) {
int result = SQLITE_OK;
base::WaitableEvent done_event(false, false);
- db_thread_proxy_->PostTask(FROM_HERE,
- NewRunnableMethod(this, &SimpleDatabaseSystem::VfsDeleteFile,
- vfs_file_name, sync_dir,
- &result, &done_event));
+ db_thread_proxy_->PostTask(
+ FROM_HERE,
+ base::Bind(&SimpleDatabaseSystem::VfsDeleteFile,
+ base::Unretained(this),
+ vfs_file_name, sync_dir,
+ &result, &done_event));
done_event.Wait();
return result;
}
@@ -106,9 +118,10 @@ int SimpleDatabaseSystem::DeleteFile(
uint32 SimpleDatabaseSystem::GetFileAttributes(const string16& vfs_file_name) {
uint32 result = 0;
base::WaitableEvent done_event(false, false);
- db_thread_proxy_->PostTask(FROM_HERE,
- NewRunnableMethod(this, &SimpleDatabaseSystem::VfsGetFileAttributes,
- vfs_file_name, &result, &done_event));
+ db_thread_proxy_->PostTask(
+ FROM_HERE,
+ base::Bind(&SimpleDatabaseSystem::VfsGetFileAttributes,
+ base::Unretained(this), vfs_file_name, &result, &done_event));
done_event.Wait();
return result;
}
@@ -116,9 +129,10 @@ uint32 SimpleDatabaseSystem::GetFileAttributes(const string16& vfs_file_name) {
int64 SimpleDatabaseSystem::GetFileSize(const string16& vfs_file_name) {
int64 result = 0;
base::WaitableEvent done_event(false, false);
- db_thread_proxy_->PostTask(FROM_HERE,
- NewRunnableMethod(this, &SimpleDatabaseSystem::VfsGetFileSize,
- vfs_file_name, &result, &done_event));
+ db_thread_proxy_->PostTask(
+ FROM_HERE,
+ base::Bind(&SimpleDatabaseSystem::VfsGetFileSize,
+ base::Unretained(this), vfs_file_name, &result, &done_event));
done_event.Wait();
return result;
}
@@ -127,24 +141,28 @@ int64 SimpleDatabaseSystem::GetSpaceAvailable(
const string16& origin_identifier) {
int64 result = 0;
base::WaitableEvent done_event(false, false);
- db_thread_proxy_->PostTask(FROM_HERE,
- NewRunnableMethod(this, &SimpleDatabaseSystem::VfsGetSpaceAvailable,
- origin_identifier, &result, &done_event));
+ db_thread_proxy_->PostTask(
+ FROM_HERE,
+ base::Bind(&SimpleDatabaseSystem::VfsGetSpaceAvailable,
+ base::Unretained(this), origin_identifier,
+ &result, &done_event));
done_event.Wait();
return result;
}
void SimpleDatabaseSystem::ClearAllDatabases() {
open_connections_->WaitForAllDatabasesToClose();
- db_thread_proxy_->PostTask(FROM_HERE,
- NewRunnableMethod(this, &SimpleDatabaseSystem::ResetTracker));
+ db_thread_proxy_->PostTask(
+ FROM_HERE,
+ base::Bind(&SimpleDatabaseSystem::ResetTracker, base::Unretained(this)));
}
void SimpleDatabaseSystem::SetDatabaseQuota(int64 quota) {
if (!db_thread_proxy_->BelongsToCurrentThread()) {
- db_thread_proxy_->PostTask(FROM_HERE,
- NewRunnableMethod(this, &SimpleDatabaseSystem::SetDatabaseQuota,
- quota));
+ db_thread_proxy_->PostTask(
+ FROM_HERE,
+ base::Bind(&SimpleDatabaseSystem::SetDatabaseQuota,
+ base::Unretained(this), quota));
return;
}
quota_per_origin_ = quota;
diff --git a/webkit/support/simple_database_system.h b/webkit/support/simple_database_system.h
index 14c9014..b15cb48 100644
--- a/webkit/support/simple_database_system.h
+++ b/webkit/support/simple_database_system.h
@@ -12,7 +12,6 @@
#include "base/scoped_temp_dir.h"
#include "base/string16.h"
#include "base/synchronization/lock.h"
-#include "base/task.h"
#include "base/threading/thread.h"
#include "third_party/WebKit/Source/WebKit/chromium/public/WebDatabaseObserver.h"
#include "webkit/database/database_connections.h"
@@ -101,6 +100,4 @@ class SimpleDatabaseSystem : public webkit_database::DatabaseTracker::Observer,
static SimpleDatabaseSystem* instance_;
};
-DISABLE_RUNNABLE_METHOD_REFCOUNT(SimpleDatabaseSystem);
-
#endif // WEBKIT_SUPPORT_SIMPLE_DATABASE_SYSTEM_H_