| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "chrome/browser/browsing_data/browsing_data_database_helper.h" | 5 #include "chrome/browser/browsing_data/browsing_data_database_helper.h" |
| 6 | 6 |
| 7 #include <vector> | 7 #include <vector> |
| 8 | 8 |
| 9 #include "base/bind.h" | 9 #include "base/bind.h" |
| 10 #include "base/callback.h" | 10 #include "base/callback.h" |
| 11 #include "base/file_util.h" | 11 #include "base/file_util.h" |
| 12 #include "base/strings/utf_string_conversions.h" | 12 #include "base/strings/utf_string_conversions.h" |
| 13 #include "chrome/browser/browsing_data/browsing_data_helper.h" | 13 #include "chrome/browser/browsing_data/browsing_data_helper.h" |
| 14 #include "chrome/browser/profiles/profile.h" | 14 #include "chrome/browser/profiles/profile.h" |
| 15 #include "content/public/browser/browser_thread.h" | 15 #include "content/public/browser/browser_thread.h" |
| 16 #include "content/public/browser/storage_partition.h" | 16 #include "content/public/browser/storage_partition.h" |
| 17 #include "net/base/completion_callback.h" | 17 #include "net/base/completion_callback.h" |
| 18 #include "net/base/net_errors.h" | 18 #include "net/base/net_errors.h" |
| 19 #include "webkit/common/database/database_identifier.h" | 19 #include "webkit/common/database/database_identifier.h" |
| 20 | 20 |
| 21 using content::BrowserContext; | 21 using content::BrowserContext; |
| 22 using content::BrowserThread; | 22 using content::BrowserThread; |
| 23 using webkit_database::DatabaseIdentifier; | 23 using storage::DatabaseIdentifier; |
| 24 | 24 |
| 25 BrowsingDataDatabaseHelper::DatabaseInfo::DatabaseInfo( | 25 BrowsingDataDatabaseHelper::DatabaseInfo::DatabaseInfo( |
| 26 const DatabaseIdentifier& identifier, | 26 const DatabaseIdentifier& identifier, |
| 27 const std::string& database_name, | 27 const std::string& database_name, |
| 28 const std::string& description, | 28 const std::string& description, |
| 29 int64 size, | 29 int64 size, |
| 30 base::Time last_modified) | 30 base::Time last_modified) |
| 31 : identifier(identifier), | 31 : identifier(identifier), |
| 32 database_name(database_name), | 32 database_name(database_name), |
| 33 description(description), | 33 description(description), |
| (...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 65 const std::string& name) { | 65 const std::string& name) { |
| 66 DCHECK_CURRENTLY_ON(BrowserThread::UI); | 66 DCHECK_CURRENTLY_ON(BrowserThread::UI); |
| 67 BrowserThread::PostTask( | 67 BrowserThread::PostTask( |
| 68 BrowserThread::FILE, FROM_HERE, | 68 BrowserThread::FILE, FROM_HERE, |
| 69 base::Bind(&BrowsingDataDatabaseHelper::DeleteDatabaseOnFileThread, this, | 69 base::Bind(&BrowsingDataDatabaseHelper::DeleteDatabaseOnFileThread, this, |
| 70 origin, name)); | 70 origin, name)); |
| 71 } | 71 } |
| 72 | 72 |
| 73 void BrowsingDataDatabaseHelper::FetchDatabaseInfoOnFileThread() { | 73 void BrowsingDataDatabaseHelper::FetchDatabaseInfoOnFileThread() { |
| 74 DCHECK_CURRENTLY_ON(BrowserThread::FILE); | 74 DCHECK_CURRENTLY_ON(BrowserThread::FILE); |
| 75 std::vector<webkit_database::OriginInfo> origins_info; | 75 std::vector<storage::OriginInfo> origins_info; |
| 76 if (tracker_.get() && tracker_->GetAllOriginsInfo(&origins_info)) { | 76 if (tracker_.get() && tracker_->GetAllOriginsInfo(&origins_info)) { |
| 77 for (std::vector<webkit_database::OriginInfo>::const_iterator ori = | 77 for (std::vector<storage::OriginInfo>::const_iterator ori = |
| 78 origins_info.begin(); ori != origins_info.end(); ++ori) { | 78 origins_info.begin(); |
| 79 ori != origins_info.end(); |
| 80 ++ori) { |
| 79 DatabaseIdentifier identifier = | 81 DatabaseIdentifier identifier = |
| 80 DatabaseIdentifier::Parse(ori->GetOriginIdentifier()); | 82 DatabaseIdentifier::Parse(ori->GetOriginIdentifier()); |
| 81 if (!BrowsingDataHelper::HasWebScheme(identifier.ToOrigin())) { | 83 if (!BrowsingDataHelper::HasWebScheme(identifier.ToOrigin())) { |
| 82 // Non-websafe state is not considered browsing data. | 84 // Non-websafe state is not considered browsing data. |
| 83 continue; | 85 continue; |
| 84 } | 86 } |
| 85 std::vector<base::string16> databases; | 87 std::vector<base::string16> databases; |
| 86 ori->GetAllDatabaseNames(&databases); | 88 ori->GetAllDatabaseNames(&databases); |
| 87 for (std::vector<base::string16>::const_iterator db = databases.begin(); | 89 for (std::vector<base::string16>::const_iterator db = databases.begin(); |
| 88 db != databases.end(); ++db) { | 90 db != databases.end(); ++db) { |
| (...skipping 121 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 210 } | 212 } |
| 211 | 213 |
| 212 BrowserThread::PostTask( | 214 BrowserThread::PostTask( |
| 213 BrowserThread::UI, FROM_HERE, base::Bind(callback, result)); | 215 BrowserThread::UI, FROM_HERE, base::Bind(callback, result)); |
| 214 } | 216 } |
| 215 | 217 |
| 216 void CannedBrowsingDataDatabaseHelper::DeleteDatabase( | 218 void CannedBrowsingDataDatabaseHelper::DeleteDatabase( |
| 217 const std::string& origin_identifier, | 219 const std::string& origin_identifier, |
| 218 const std::string& name) { | 220 const std::string& name) { |
| 219 GURL origin = | 221 GURL origin = |
| 220 webkit_database::DatabaseIdentifier::Parse(origin_identifier).ToOrigin(); | 222 storage::DatabaseIdentifier::Parse(origin_identifier).ToOrigin(); |
| 221 for (std::set<PendingDatabaseInfo>::iterator it = | 223 for (std::set<PendingDatabaseInfo>::iterator it = |
| 222 pending_database_info_.begin(); | 224 pending_database_info_.begin(); |
| 223 it != pending_database_info_.end(); | 225 it != pending_database_info_.end(); |
| 224 ++it) { | 226 ++it) { |
| 225 if (it->origin == origin && it->name == name) { | 227 if (it->origin == origin && it->name == name) { |
| 226 pending_database_info_.erase(it); | 228 pending_database_info_.erase(it); |
| 227 break; | 229 break; |
| 228 } | 230 } |
| 229 } | 231 } |
| 230 BrowsingDataDatabaseHelper::DeleteDatabase(origin_identifier, name); | 232 BrowsingDataDatabaseHelper::DeleteDatabase(origin_identifier, name); |
| 231 } | 233 } |
| 232 | 234 |
| 233 CannedBrowsingDataDatabaseHelper::~CannedBrowsingDataDatabaseHelper() {} | 235 CannedBrowsingDataDatabaseHelper::~CannedBrowsingDataDatabaseHelper() {} |
| OLD | NEW |