| 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 c010e1053be80b5f9c7809a7110b166380212afc..f41705a88e2f6f8e4ebc170ea6040c0bfadc2148 100644
|
| --- a/chrome/browser/browsing_data/browsing_data_database_helper.cc
|
| +++ b/chrome/browser/browsing_data/browsing_data_database_helper.cc
|
| @@ -17,25 +17,21 @@
|
| #include "net/base/net_errors.h"
|
| #include "third_party/WebKit/public/platform/WebCString.h"
|
| #include "third_party/WebKit/public/platform/WebString.h"
|
| -#include "third_party/WebKit/public/web/WebSecurityOrigin.h"
|
| +#include "webkit/common/database/database_identifier.h"
|
|
|
| using content::BrowserContext;
|
| using content::BrowserThread;
|
| -using WebKit::WebSecurityOrigin;
|
| +using webkit_database::DatabaseIdentifier;
|
|
|
| BrowsingDataDatabaseHelper::DatabaseInfo::DatabaseInfo(
|
| - const std::string& host,
|
| + const DatabaseIdentifier& identifier,
|
| const std::string& database_name,
|
| - const std::string& origin_identifier,
|
| const std::string& description,
|
| - const std::string& origin,
|
| int64 size,
|
| base::Time last_modified)
|
| - : host(host),
|
| + : identifier(identifier),
|
| database_name(database_name),
|
| - origin_identifier(origin_identifier),
|
| description(description),
|
| - origin(origin),
|
| size(size),
|
| last_modified(last_modified) {
|
| }
|
| @@ -81,11 +77,9 @@ void BrowsingDataDatabaseHelper::FetchDatabaseInfoOnFileThread() {
|
| if (tracker_.get() && tracker_->GetAllOriginsInfo(&origins_info)) {
|
| for (std::vector<webkit_database::OriginInfo>::const_iterator ori =
|
| origins_info.begin(); ori != origins_info.end(); ++ori) {
|
| - WebSecurityOrigin web_security_origin =
|
| - WebSecurityOrigin::createFromDatabaseIdentifier(
|
| - WebKit::WebString::fromUTF8(ori->GetOriginIdentifier()));
|
| - GURL origin_url(web_security_origin.toString().utf8());
|
| - if (!BrowsingDataHelper::HasWebScheme(origin_url)) {
|
| + DatabaseIdentifier identifier =
|
| + DatabaseIdentifier::Parse(ori->GetOriginIdentifier());
|
| + if (!BrowsingDataHelper::HasWebScheme(identifier.ToOrigin())) {
|
| // Non-websafe state is not considered browsing data.
|
| continue;
|
| }
|
| @@ -98,11 +92,9 @@ void BrowsingDataDatabaseHelper::FetchDatabaseInfoOnFileThread() {
|
| base::PlatformFileInfo file_info;
|
| if (file_util::GetFileInfo(file_path, &file_info)) {
|
| database_info_.push_back(DatabaseInfo(
|
| - web_security_origin.host().utf8(),
|
| + identifier,
|
| UTF16ToUTF8(*db),
|
| - ori->GetOriginIdentifier(),
|
| UTF16ToUTF8(ori->GetDatabaseDescription(*db)),
|
| - origin_url.spec(),
|
| file_info.size,
|
| file_info.last_modified));
|
| }
|
| @@ -163,7 +155,6 @@ CannedBrowsingDataDatabaseHelper* CannedBrowsingDataDatabaseHelper::Clone() {
|
| CannedBrowsingDataDatabaseHelper* clone =
|
| new CannedBrowsingDataDatabaseHelper(profile_);
|
|
|
| - base::AutoLock auto_lock(lock_);
|
| clone->pending_database_info_ = pending_database_info_;
|
| return clone;
|
| }
|
| @@ -173,7 +164,6 @@ void CannedBrowsingDataDatabaseHelper::AddDatabase(
|
| const std::string& name,
|
| const std::string& description) {
|
| DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
|
| - base::AutoLock auto_lock(lock_);
|
| if (BrowsingDataHelper::HasWebScheme(origin)) {
|
| pending_database_info_.insert(PendingDatabaseInfo(
|
| origin, name, description));
|
| @@ -181,17 +171,17 @@ void CannedBrowsingDataDatabaseHelper::AddDatabase(
|
| }
|
|
|
| void CannedBrowsingDataDatabaseHelper::Reset() {
|
| - base::AutoLock auto_lock(lock_);
|
| + DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
|
| pending_database_info_.clear();
|
| }
|
|
|
| bool CannedBrowsingDataDatabaseHelper::empty() const {
|
| - base::AutoLock auto_lock(lock_);
|
| + DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
|
| return pending_database_info_.empty();
|
| }
|
|
|
| size_t CannedBrowsingDataDatabaseHelper::GetDatabaseCount() const {
|
| - base::AutoLock auto_lock(lock_);
|
| + DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
|
| return pending_database_info_.size();
|
| }
|
|
|
| @@ -208,32 +198,18 @@ void CannedBrowsingDataDatabaseHelper::StartFetching(
|
|
|
| is_fetching_ = true;
|
| completion_callback_ = callback;
|
| - BrowserThread::PostTask(
|
| - BrowserThread::WEBKIT_DEPRECATED, FROM_HERE,
|
| - base::Bind(&CannedBrowsingDataDatabaseHelper::ConvertInfoInWebKitThread,
|
| - this));
|
| -}
|
| -
|
| -CannedBrowsingDataDatabaseHelper::~CannedBrowsingDataDatabaseHelper() {}
|
|
|
| -void CannedBrowsingDataDatabaseHelper::ConvertInfoInWebKitThread() {
|
| - base::AutoLock auto_lock(lock_);
|
| database_info_.clear();
|
| for (std::set<PendingDatabaseInfo>::const_iterator
|
| info = pending_database_info_.begin();
|
| info != pending_database_info_.end(); ++info) {
|
| - WebSecurityOrigin web_security_origin =
|
| - WebSecurityOrigin::createFromString(
|
| - UTF8ToUTF16(info->origin.spec()));
|
| - std::string origin_identifier =
|
| - web_security_origin.databaseIdentifier().utf8();
|
| + DatabaseIdentifier identifier =
|
| + DatabaseIdentifier::CreateFromOrigin(info->origin);
|
|
|
| database_info_.push_back(DatabaseInfo(
|
| - web_security_origin.host().utf8(),
|
| + identifier,
|
| info->name,
|
| - origin_identifier,
|
| info->description,
|
| - web_security_origin.toString().utf8(),
|
| 0,
|
| base::Time()));
|
| }
|
| @@ -242,3 +218,5 @@ void CannedBrowsingDataDatabaseHelper::ConvertInfoInWebKitThread() {
|
| BrowserThread::UI, FROM_HERE,
|
| base::Bind(&CannedBrowsingDataDatabaseHelper::NotifyInUIThread, this));
|
| }
|
| +
|
| +CannedBrowsingDataDatabaseHelper::~CannedBrowsingDataDatabaseHelper() {}
|
|
|