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

Side by Side Diff: chrome/browser/cookies_tree_model.cc

Issue 600104: Actually delete databases in CookiesTreeModel. (Closed)
Patch Set: fixed comments Created 10 years, 10 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 unified diff | Download patch
OLDNEW
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 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/cookies_tree_model.h" 5 #include "chrome/browser/cookies_tree_model.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <functional> 8 #include <functional>
9 #include <vector> 9 #include <vector>
10 10
(...skipping 111 matching lines...) Expand 10 before | Expand all | Expand 10 after
122 } 122 }
123 }; 123 };
124 124
125 } // namespace 125 } // namespace
126 126
127 /////////////////////////////////////////////////////////////////////////////// 127 ///////////////////////////////////////////////////////////////////////////////
128 // CookieTreeDatabaseNode, public: 128 // CookieTreeDatabaseNode, public:
129 129
130 CookieTreeDatabaseNode::CookieTreeDatabaseNode( 130 CookieTreeDatabaseNode::CookieTreeDatabaseNode(
131 BrowsingDataDatabaseHelper::DatabaseInfo* database_info) 131 BrowsingDataDatabaseHelper::DatabaseInfo* database_info)
132 : CookieTreeNode(UTF8ToWide(database_info->database_name)), 132 : CookieTreeNode(UTF8ToWide(database_info->database_name.empty() ?
133 database_info->origin_identifier :
134 database_info->database_name)),
133 database_info_(database_info) { 135 database_info_(database_info) {
134 } 136 }
135 137
136 void CookieTreeDatabaseNode::DeleteStoredObjects() { 138 void CookieTreeDatabaseNode::DeleteStoredObjects() {
137 GetModel()->database_helper_->DeleteDatabase( 139 GetModel()->database_helper_->DeleteDatabase(
138 database_info_->origin_identifier, database_info_->database_name); 140 database_info_->origin_identifier, database_info_->database_name);
139 } 141 }
140 142
141 /////////////////////////////////////////////////////////////////////////////// 143 ///////////////////////////////////////////////////////////////////////////////
142 // CookieTreeLocalStorageNode, public: 144 // CookieTreeLocalStorageNode, public:
143 145
144 CookieTreeLocalStorageNode::CookieTreeLocalStorageNode( 146 CookieTreeLocalStorageNode::CookieTreeLocalStorageNode(
145 BrowsingDataLocalStorageHelper::LocalStorageInfo* local_storage_info) 147 BrowsingDataLocalStorageHelper::LocalStorageInfo* local_storage_info)
146 : CookieTreeNode(UTF8ToWide(local_storage_info->origin)), 148 : CookieTreeNode(UTF8ToWide(
149 local_storage_info->origin.empty() ?
150 local_storage_info->database_identifier :
151 local_storage_info->origin)),
147 local_storage_info_(local_storage_info) { 152 local_storage_info_(local_storage_info) {
148 } 153 }
149 154
150 void CookieTreeLocalStorageNode::DeleteStoredObjects() { 155 void CookieTreeLocalStorageNode::DeleteStoredObjects() {
151 GetModel()->local_storage_helper_->DeleteLocalStorageFile( 156 GetModel()->local_storage_helper_->DeleteLocalStorageFile(
152 local_storage_info_->file_path); 157 local_storage_info_->file_path);
153 } 158 }
154 159
155 /////////////////////////////////////////////////////////////////////////////// 160 ///////////////////////////////////////////////////////////////////////////////
156 // CookieTreeRootNode, public: 161 // CookieTreeRootNode, public:
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after
206 } 211 }
207 212
208 CookieTreeLocalStoragesNode* 213 CookieTreeLocalStoragesNode*
209 CookieTreeOriginNode::GetOrCreateLocalStoragesNode() { 214 CookieTreeOriginNode::GetOrCreateLocalStoragesNode() {
210 if (local_storages_child_) 215 if (local_storages_child_)
211 return local_storages_child_; 216 return local_storages_child_;
212 // Need to make a LocalStorages node, add it to the tree, and return it. 217 // Need to make a LocalStorages node, add it to the tree, and return it.
213 CookieTreeLocalStoragesNode* retval = new CookieTreeLocalStoragesNode; 218 CookieTreeLocalStoragesNode* retval = new CookieTreeLocalStoragesNode;
214 int index = 0; 219 int index = 0;
215 if (cookies_child_) 220 if (cookies_child_)
216 index++; 221 ++index;
217 if (databases_child_) 222 if (databases_child_)
218 index++; 223 ++index;
219 GetModel()->Add(this, index, retval); 224 GetModel()->Add(this, index, retval);
220 local_storages_child_ = retval; 225 local_storages_child_ = retval;
221 return retval; 226 return retval;
222 } 227 }
223 228
224 /////////////////////////////////////////////////////////////////////////////// 229 ///////////////////////////////////////////////////////////////////////////////
225 // CookieTreeCookiesNode, public: 230 // CookieTreeCookiesNode, public:
226 231
227 CookieTreeCookiesNode::CookieTreeCookiesNode() 232 CookieTreeCookiesNode::CookieTreeCookiesNode()
228 : CookieTreeNode(l10n_util::GetString(IDS_COOKIES_COOKIES)) {} 233 : CookieTreeNode(l10n_util::GetString(IDS_COOKIES_COOKIES)) {}
(...skipping 206 matching lines...) Expand 10 before | Expand all | Expand 10 after
435 database_info_list_ = database_info; 440 database_info_list_ = database_info;
436 PopulateDatabaseInfoWithFilter(std::wstring()); 441 PopulateDatabaseInfoWithFilter(std::wstring());
437 } 442 }
438 443
439 void CookiesTreeModel::PopulateDatabaseInfoWithFilter( 444 void CookiesTreeModel::PopulateDatabaseInfoWithFilter(
440 const std::wstring& filter) { 445 const std::wstring& filter) {
441 CookieTreeRootNode* root = static_cast<CookieTreeRootNode*>(GetRoot()); 446 CookieTreeRootNode* root = static_cast<CookieTreeRootNode*>(GetRoot());
442 for (DatabaseInfoList::iterator database_info = database_info_list_.begin(); 447 for (DatabaseInfoList::iterator database_info = database_info_list_.begin();
443 database_info != database_info_list_.end(); 448 database_info != database_info_list_.end();
444 ++database_info) { 449 ++database_info) {
445 std::string origin = database_info->host; 450 std::string origin = database_info->host.empty() ?
451 database_info->origin_identifier : database_info->host;
446 if (!filter.size() || 452 if (!filter.size() ||
447 (UTF8ToWide(origin).find(filter) != std::wstring::npos)) { 453 (UTF8ToWide(origin).find(filter) != std::wstring::npos)) {
448 CookieTreeOriginNode* origin_node = root->GetOrCreateOriginNode( 454 CookieTreeOriginNode* origin_node = root->GetOrCreateOriginNode(
449 UTF8ToWide(database_info->host)); 455 UTF8ToWide(database_info->host));
450 CookieTreeDatabasesNode* databases_node = 456 CookieTreeDatabasesNode* databases_node =
451 origin_node->GetOrCreateDatabasesNode(); 457 origin_node->GetOrCreateDatabasesNode();
452 databases_node->AddDatabaseNode( 458 databases_node->AddDatabaseNode(
453 new CookieTreeDatabaseNode(&(*database_info))); 459 new CookieTreeDatabaseNode(&(*database_info)));
454 } 460 }
455 } 461 }
456 NotifyObserverTreeNodeChanged(root); 462 NotifyObserverTreeNodeChanged(root);
457 } 463 }
458 464
459 void CookiesTreeModel::OnStorageModelInfoLoaded( 465 void CookiesTreeModel::OnStorageModelInfoLoaded(
460 const LocalStorageInfoList& local_storage_info) { 466 const LocalStorageInfoList& local_storage_info) {
461 local_storage_info_list_ = local_storage_info; 467 local_storage_info_list_ = local_storage_info;
462 PopulateLocalStorageInfoWithFilter(std::wstring()); 468 PopulateLocalStorageInfoWithFilter(std::wstring());
463 } 469 }
464 470
465 void CookiesTreeModel::PopulateLocalStorageInfoWithFilter( 471 void CookiesTreeModel::PopulateLocalStorageInfoWithFilter(
466 const std::wstring& filter) { 472 const std::wstring& filter) {
467 CookieTreeRootNode* root = static_cast<CookieTreeRootNode*>(GetRoot()); 473 CookieTreeRootNode* root = static_cast<CookieTreeRootNode*>(GetRoot());
468 for (LocalStorageInfoList::iterator local_storage_info = 474 for (LocalStorageInfoList::iterator local_storage_info =
469 local_storage_info_list_.begin(); 475 local_storage_info_list_.begin();
470 local_storage_info != local_storage_info_list_.end(); 476 local_storage_info != local_storage_info_list_.end();
471 ++local_storage_info) { 477 ++local_storage_info) {
472 std::string origin = local_storage_info->host; 478 std::string origin = local_storage_info->host.empty() ?
479 local_storage_info->database_identifier : local_storage_info->host;
473 if (!filter.size() || 480 if (!filter.size() ||
474 (UTF8ToWide(origin).find(filter) != std::wstring::npos)) { 481 (UTF8ToWide(origin).find(filter) != std::wstring::npos)) {
475 CookieTreeOriginNode* origin_node = root->GetOrCreateOriginNode( 482 CookieTreeOriginNode* origin_node = root->GetOrCreateOriginNode(
476 UTF8ToWide(local_storage_info->host)); 483 UTF8ToWide(local_storage_info->host));
477 CookieTreeLocalStoragesNode* local_storages_node = 484 CookieTreeLocalStoragesNode* local_storages_node =
478 origin_node->GetOrCreateLocalStoragesNode(); 485 origin_node->GetOrCreateLocalStoragesNode();
479 local_storages_node->AddLocalStorageNode( 486 local_storages_node->AddLocalStorageNode(
480 new CookieTreeLocalStorageNode(&(*local_storage_info))); 487 new CookieTreeLocalStorageNode(&(*local_storage_info)));
481 } 488 }
482 } 489 }
483 NotifyObserverTreeNodeChanged(root); 490 NotifyObserverTreeNodeChanged(root);
484 } 491 }
OLDNEW
« no previous file with comments | « chrome/browser/browsing_data_database_helper.cc ('k') | chrome/browser/cookies_tree_model_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698