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

Unified Diff: chrome/browser/browsing_data/browsing_data_database_helper.cc

Issue 124183002: Implement delete methods for the various CannedBrowsingDataHelpers. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebase Created 6 years, 11 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
Index: chrome/browser/browsing_data/browsing_data_database_helper.cc
diff --git a/chrome/browser/browsing_data/browsing_data_database_helper.cc b/chrome/browser/browsing_data/browsing_data_database_helper.cc
index 29f65fdc4c9b034f41bb4ee4d544b03c86168d29..9317f8be9a32016d222b892cea02f4dca3ed7c49 100644
--- a/chrome/browser/browsing_data/browsing_data_database_helper.cc
+++ b/chrome/browser/browsing_data/browsing_data_database_helper.cc
@@ -7,7 +7,6 @@
#include "base/bind.h"
#include "base/callback.h"
#include "base/file_util.h"
-#include "base/message_loop/message_loop.h"
#include "base/strings/utf_string_conversions.h"
#include "chrome/browser/browsing_data/browsing_data_helper.h"
#include "chrome/browser/profiles/profile.h"
@@ -191,20 +190,16 @@ CannedBrowsingDataDatabaseHelper::GetPendingDatabaseInfo() {
void CannedBrowsingDataDatabaseHelper::StartFetching(
const base::Callback<void(const std::list<DatabaseInfo>&)>& callback) {
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
- DCHECK(!is_fetching_);
- DCHECK_EQ(false, callback.is_null());
-
- is_fetching_ = true;
- completion_callback_ = callback;
+ DCHECK(!callback.is_null());
- database_info_.clear();
+ std::list<DatabaseInfo> result;
for (std::set<PendingDatabaseInfo>::const_iterator
info = pending_database_info_.begin();
info != pending_database_info_.end(); ++info) {
DatabaseIdentifier identifier =
DatabaseIdentifier::CreateFromOrigin(info->origin);
- database_info_.push_back(DatabaseInfo(
+ result.push_back(DatabaseInfo(
identifier,
info->name,
info->description,
@@ -213,8 +208,24 @@ void CannedBrowsingDataDatabaseHelper::StartFetching(
}
BrowserThread::PostTask(
- BrowserThread::UI, FROM_HERE,
- base::Bind(&CannedBrowsingDataDatabaseHelper::NotifyInUIThread, this));
+ BrowserThread::UI, FROM_HERE, base::Bind(callback, result));
+}
+
+void CannedBrowsingDataDatabaseHelper::DeleteDatabase(
+ const std::string& origin_identifier,
+ const std::string& name) {
+ GURL origin =
+ webkit_database::DatabaseIdentifier::Parse(origin_identifier).ToOrigin();
+ for (std::set<PendingDatabaseInfo>::iterator it =
+ pending_database_info_.begin();
+ it != pending_database_info_.end();
+ ++it) {
+ if (it->origin == origin && it->name == name) {
+ pending_database_info_.erase(it);
+ break;
+ }
+ }
+ BrowsingDataDatabaseHelper::DeleteDatabase(origin_identifier, name);
}
CannedBrowsingDataDatabaseHelper::~CannedBrowsingDataDatabaseHelper() {}

Powered by Google App Engine
This is Rietveld 408576698