Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(163)

Unified Diff: webkit/quota/quota_manager.cc

Issue 10066044: RefCounted types should not have public destructors, webkit/ (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Implementation ordering Created 8 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « webkit/quota/quota_manager.h ('k') | webkit/support/test_webmessageportchannel.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: webkit/quota/quota_manager.cc
diff --git a/webkit/quota/quota_manager.cc b/webkit/quota/quota_manager.cc
index 640de20866416e321c5f0de560f10fa1bfd8c48c..031aa9daa36e9b7c03ad43bc00fff7cf4f843760 100644
--- a/webkit/quota/quota_manager.cc
+++ b/webkit/quota/quota_manager.cc
@@ -644,8 +644,11 @@ class QuotaManager::DatabaseTaskBase : public QuotaThreadTask {
}
protected:
+ virtual ~DatabaseTaskBase() {}
+
virtual void DatabaseTaskCompleted() = 0;
+ // QuotaThreadTask:
virtual void Completed() OVERRIDE {
manager_->db_disabled_ = db_disabled_;
DatabaseTaskCompleted();
@@ -674,6 +677,9 @@ class QuotaManager::InitializeTask : public QuotaManager::DatabaseTaskBase {
}
protected:
+ virtual ~InitializeTask() {}
+
+ // QuotaThreadTask:
virtual void RunOnTargetThread() OVERRIDE {
// See if we have overriding temporary quota configuration.
database()->GetQuotaConfigValue(QuotaDatabase::kTemporaryQuotaOverrideKey,
@@ -682,6 +688,7 @@ class QuotaManager::InitializeTask : public QuotaManager::DatabaseTaskBase {
&desired_available_space_);
}
+ // DatabaseTaskBase:
virtual void DatabaseTaskCompleted() OVERRIDE {
manager()->temporary_quota_override_ = temporary_quota_override_;
manager()->desired_available_space_ = desired_available_space_;
@@ -706,6 +713,9 @@ class QuotaManager::UpdateTemporaryQuotaOverrideTask
callback_(callback) {}
protected:
+ virtual ~UpdateTemporaryQuotaOverrideTask() {}
+
+ // QuotaThreadTask:
virtual void RunOnTargetThread() OVERRIDE {
if (!database()->SetQuotaConfigValue(
QuotaDatabase::kTemporaryQuotaOverrideKey, new_quota_)) {
@@ -715,6 +725,7 @@ class QuotaManager::UpdateTemporaryQuotaOverrideTask
}
}
+ // DatabaseTaskBase:
virtual void DatabaseTaskCompleted() OVERRIDE {
if (!db_disabled()) {
manager()->temporary_quota_override_ = new_quota_;
@@ -748,15 +759,22 @@ class QuotaManager::GetPersistentHostQuotaTask
quota_(-1),
callback_(callback) {
}
+
protected:
+ virtual ~GetPersistentHostQuotaTask() {}
+
+ // QuotaThreadTask:
virtual void RunOnTargetThread() OVERRIDE {
if (!database()->GetHostQuota(host_, kStorageTypePersistent, &quota_))
quota_ = 0;
}
+
+ // DatabaseTaskBase:
virtual void DatabaseTaskCompleted() OVERRIDE {
callback_.Run(kQuotaStatusOk,
host_, kStorageTypePersistent, quota_);
}
+
private:
std::string host_;
int64 quota_;
@@ -777,7 +795,11 @@ class QuotaManager::UpdatePersistentHostQuotaTask
callback_(callback) {
DCHECK_GE(new_quota_, 0);
}
+
protected:
+ virtual ~UpdatePersistentHostQuotaTask() {}
+
+ // QuotaThreadTask:
virtual void RunOnTargetThread() OVERRIDE {
if (!database()->SetHostQuota(host_, kStorageTypePersistent, new_quota_)) {
set_db_disabled(true);
@@ -785,15 +807,16 @@ class QuotaManager::UpdatePersistentHostQuotaTask
}
}
+ virtual void Aborted() OVERRIDE {
+ callback_.Reset();
+ }
+
+ // DatabaseTaskBase:
virtual void DatabaseTaskCompleted() OVERRIDE {
callback_.Run(db_disabled() ? kQuotaErrorInvalidAccess : kQuotaStatusOk,
host_, kStorageTypePersistent, new_quota_);
}
- virtual void Aborted() OVERRIDE {
- callback_.Reset();
- }
-
private:
std::string host_;
int64 new_quota_;
@@ -828,19 +851,23 @@ class QuotaManager::GetLRUOriginTask
}
protected:
+ virtual ~GetLRUOriginTask() {}
+
+ // QuotaThreadTask:
virtual void RunOnTargetThread() OVERRIDE {
database()->GetLRUOrigin(
type_, exceptions_, special_storage_policy_, &url_);
}
- virtual void DatabaseTaskCompleted() OVERRIDE {
- callback_.Run(url_);
- }
-
virtual void Aborted() OVERRIDE {
callback_.Reset();
}
+ // DatabaseTaskBase:
+ virtual void DatabaseTaskCompleted() OVERRIDE {
+ callback_.Run(url_);
+ }
+
private:
StorageType type_;
std::set<GURL> exceptions_;
@@ -861,11 +888,16 @@ class QuotaManager::DeleteOriginInfo
type_(type) {}
protected:
+ virtual ~DeleteOriginInfo() {}
+
+ // QuotaThreadTask:
virtual void RunOnTargetThread() OVERRIDE {
if (!database()->DeleteOriginInfo(origin_, type_)) {
set_db_disabled(true);
}
}
+
+ // DatabaseTaskBase:
virtual void DatabaseTaskCompleted() OVERRIDE {}
private:
@@ -886,6 +918,9 @@ class QuotaManager::InitializeTemporaryOriginsInfoTask
}
protected:
+ virtual ~InitializeTemporaryOriginsInfoTask() {}
+
+ // QuotaThreadTask:
virtual void RunOnTargetThread() OVERRIDE {
if (!database()->IsOriginDatabaseBootstrapped()) {
// Register existing origins with 0 last time access.
@@ -898,6 +933,8 @@ class QuotaManager::InitializeTemporaryOriginsInfoTask
}
}
}
+
+ // DatabaseTaskBase:
virtual void DatabaseTaskCompleted() OVERRIDE {
if (has_registered_origins_)
manager()->StartEviction();
@@ -918,9 +955,11 @@ class QuotaManager::AvailableSpaceQueryTask : public QuotaThreadTask {
space_(-1),
callback_(callback) {
}
- virtual ~AvailableSpaceQueryTask() {}
protected:
+ virtual ~AvailableSpaceQueryTask() {}
+
+ // QuotaThreadTask:
virtual void RunOnTargetThread() OVERRIDE {
space_ = base::SysInfo::AmountOfFreeDiskSpace(profile_path_);
}
@@ -953,11 +992,16 @@ class QuotaManager::UpdateAccessTimeTask
accessed_time_(accessed_time) {}
protected:
+ virtual ~UpdateAccessTimeTask() {}
+
+ // QuotaThreadTask:
virtual void RunOnTargetThread() OVERRIDE {
if (!database()->SetOriginLastAccessTime(origin_, type_, accessed_time_)) {
set_db_disabled(true);
}
}
+
+ // DatabaseTaskBase:
virtual void DatabaseTaskCompleted() OVERRIDE {}
private:
@@ -980,12 +1024,17 @@ class QuotaManager::UpdateModifiedTimeTask
modified_time_(modified_time) {}
protected:
+ virtual ~UpdateModifiedTimeTask() {}
+
+ // QuotaThreadTask:
virtual void RunOnTargetThread() OVERRIDE {
if (!database()->SetOriginLastModifiedTime(
origin_, type_, modified_time_)) {
set_db_disabled(true);
}
}
+
+ // DatabaseTaskBase:
virtual void DatabaseTaskCompleted() OVERRIDE {}
private:
@@ -1008,6 +1057,9 @@ class QuotaManager::GetModifiedSinceTask
callback_(callback) {}
protected:
+ virtual ~GetModifiedSinceTask() {}
+
+ // QuotaThreadTask:
virtual void RunOnTargetThread() OVERRIDE {
if (!database()->GetOriginsModifiedSince(
type_, &origins_, modified_since_)) {
@@ -1015,14 +1067,15 @@ class QuotaManager::GetModifiedSinceTask
}
}
- virtual void DatabaseTaskCompleted() OVERRIDE {
- callback_.Run(origins_, type_);
- }
-
virtual void Aborted() OVERRIDE {
callback_.Run(std::set<GURL>(), type_);
}
+ // DatabaseTaskBase:
+ virtual void DatabaseTaskCompleted() OVERRIDE {
+ callback_.Run(origins_, type_);
+ }
+
private:
StorageType type_;
base::Time modified_since_;
@@ -1046,7 +1099,11 @@ class QuotaManager::DumpQuotaTableTask
: DatabaseTaskBase(manager),
callback_(callback) {
}
+
protected:
+ virtual ~DumpQuotaTableTask() {}
+
+ // QuotaThreadTask:
virtual void RunOnTargetThread() OVERRIDE {
if (!database()->DumpQuotaTable(
new TableCallback(
@@ -1058,6 +1115,7 @@ class QuotaManager::DumpQuotaTableTask
callback_.Run(TableEntries());
}
+ // DatabaseTaskBase:
virtual void DatabaseTaskCompleted() OVERRIDE {
callback_.Run(entries_);
}
@@ -1088,7 +1146,11 @@ class QuotaManager::DumpOriginInfoTableTask
: DatabaseTaskBase(manager),
callback_(callback) {
}
+
protected:
+ virtual ~DumpOriginInfoTableTask() {}
+
+ // QuotaThreadTask:
virtual void RunOnTargetThread() OVERRIDE {
if (!database()->DumpOriginInfoTable(
new TableCallback(
@@ -1100,6 +1162,7 @@ class QuotaManager::DumpOriginInfoTableTask
callback_.Run(TableEntries());
}
+ // DatabaseTaskBase:
virtual void DatabaseTaskCompleted() OVERRIDE {
callback_.Run(entries_);
}
@@ -1136,14 +1199,6 @@ QuotaManager::QuotaManager(bool is_incognito,
weak_factory_(ALLOW_THIS_IN_INITIALIZER_LIST(this)) {
}
-QuotaManager::~QuotaManager() {
- proxy_->manager_ = NULL;
- std::for_each(clients_.begin(), clients_.end(),
- std::mem_fun(&QuotaClient::OnQuotaManagerDestroyed));
- if (database_.get())
- db_thread_->DeleteSoon(FROM_HERE, database_.release());
-}
-
void QuotaManager::GetUsageInfo(const GetUsageInfoCallback& callback) {
LazyInitialize();
GetUsageInfoTask* get_usage_info = new GetUsageInfoTask(this, callback);
@@ -1274,6 +1329,14 @@ void QuotaManager::GetOriginsModifiedSince(StorageType type,
this, type, modified_since, callback))->Start();
}
+QuotaManager::~QuotaManager() {
+ proxy_->manager_ = NULL;
+ std::for_each(clients_.begin(), clients_.end(),
+ std::mem_fun(&QuotaClient::OnQuotaManagerDestroyed));
+ if (database_.get())
+ db_thread_->DeleteSoon(FROM_HERE, database_.release());
+}
+
void QuotaManager::LazyInitialize() {
DCHECK(io_thread_->BelongsToCurrentThread());
if (database_.get()) {
« no previous file with comments | « webkit/quota/quota_manager.h ('k') | webkit/support/test_webmessageportchannel.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698