Chromium Code Reviews| 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/cookies_tree_model.h" | 5 #include "chrome/browser/browsing_data/cookies_tree_model.h" |
| 6 | 6 |
| 7 #include <algorithm> | 7 #include <algorithm> |
| 8 #include <functional> | 8 #include <functional> |
| 9 #include <map> | 9 #include <map> |
| 10 #include <vector> | 10 #include <vector> |
| (...skipping 115 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 126 replacements.ClearPort(); | 126 replacements.ClearPort(); |
| 127 if (url.SchemeIsCryptographic()) | 127 if (url.SchemeIsCryptographic()) |
| 128 replacements.SetScheme("http", url::Component(0, 4)); | 128 replacements.SetScheme("http", url::Component(0, 4)); |
| 129 | 129 |
| 130 return url.GetOrigin().ReplaceComponents(replacements); | 130 return url.GetOrigin().ReplaceComponents(replacements); |
| 131 } | 131 } |
| 132 | 132 |
| 133 #if defined(ENABLE_EXTENSIONS) | 133 #if defined(ENABLE_EXTENSIONS) |
| 134 bool TypeIsProtected(CookieTreeNode::DetailedInfo::NodeType type) { | 134 bool TypeIsProtected(CookieTreeNode::DetailedInfo::NodeType type) { |
| 135 switch (type) { | 135 switch (type) { |
| 136 case CookieTreeNode::DetailedInfo::TYPE_COOKIE: | 136 // Fall through each below cases to return true. |
|
Bernhard Bauer
2015/10/19 15:27:44
Leave an empty line before each comment to increas
Deepak
2015/10/20 02:49:25
Done. But just after the switch statement and befo
| |
| 137 return false; | |
| 138 case CookieTreeNode::DetailedInfo::TYPE_DATABASE: | 137 case CookieTreeNode::DetailedInfo::TYPE_DATABASE: |
| 139 return true; | |
| 140 case CookieTreeNode::DetailedInfo::TYPE_LOCAL_STORAGE: | 138 case CookieTreeNode::DetailedInfo::TYPE_LOCAL_STORAGE: |
| 141 return true; | |
| 142 case CookieTreeNode::DetailedInfo::TYPE_SESSION_STORAGE: | 139 case CookieTreeNode::DetailedInfo::TYPE_SESSION_STORAGE: |
| 143 return true; | |
| 144 case CookieTreeNode::DetailedInfo::TYPE_APPCACHE: | 140 case CookieTreeNode::DetailedInfo::TYPE_APPCACHE: |
| 145 return true; | |
| 146 case CookieTreeNode::DetailedInfo::TYPE_INDEXED_DB: | 141 case CookieTreeNode::DetailedInfo::TYPE_INDEXED_DB: |
| 147 return true; | |
| 148 case CookieTreeNode::DetailedInfo::TYPE_FILE_SYSTEM: | 142 case CookieTreeNode::DetailedInfo::TYPE_FILE_SYSTEM: |
| 149 return true; | |
| 150 case CookieTreeNode::DetailedInfo::TYPE_QUOTA: | |
| 151 return false; | |
| 152 case CookieTreeNode::DetailedInfo::TYPE_CHANNEL_ID: | |
| 153 return false; | |
| 154 case CookieTreeNode::DetailedInfo::TYPE_SERVICE_WORKER: | 143 case CookieTreeNode::DetailedInfo::TYPE_SERVICE_WORKER: |
| 155 return true; | |
| 156 case CookieTreeNode::DetailedInfo::TYPE_CACHE_STORAGE: | 144 case CookieTreeNode::DetailedInfo::TYPE_CACHE_STORAGE: |
| 157 return true; | 145 return true; |
| 146 // Fall through each below cases to return false. | |
| 147 case CookieTreeNode::DetailedInfo::TYPE_COOKIE: | |
| 148 case CookieTreeNode::DetailedInfo::TYPE_QUOTA: | |
| 149 case CookieTreeNode::DetailedInfo::TYPE_CHANNEL_ID: | |
| 158 case CookieTreeNode::DetailedInfo::TYPE_FLASH_LSO: | 150 case CookieTreeNode::DetailedInfo::TYPE_FLASH_LSO: |
| 159 return false; | 151 return false; |
| 160 default: | 152 default: |
| 161 break; | 153 break; |
| 162 } | 154 } |
| 163 return false; | 155 return false; |
| 164 } | 156 } |
| 165 #endif | 157 #endif |
| 166 | 158 |
| 167 // This function returns the local data container associated with a leaf tree | 159 // This function returns the local data container associated with a leaf tree |
| (...skipping 126 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 294 | 286 |
| 295 void CookieTreeNode::DeleteStoredObjects() { | 287 void CookieTreeNode::DeleteStoredObjects() { |
| 296 std::for_each(children().begin(), | 288 std::for_each(children().begin(), |
| 297 children().end(), | 289 children().end(), |
| 298 std::mem_fun(&CookieTreeNode::DeleteStoredObjects)); | 290 std::mem_fun(&CookieTreeNode::DeleteStoredObjects)); |
| 299 } | 291 } |
| 300 | 292 |
| 301 CookiesTreeModel* CookieTreeNode::GetModel() const { | 293 CookiesTreeModel* CookieTreeNode::GetModel() const { |
| 302 if (parent()) | 294 if (parent()) |
| 303 return parent()->GetModel(); | 295 return parent()->GetModel(); |
| 304 else | 296 return nullptr; |
| 305 return nullptr; | |
| 306 } | 297 } |
| 307 | 298 |
| 308 /////////////////////////////////////////////////////////////////////////////// | 299 /////////////////////////////////////////////////////////////////////////////// |
| 309 // CookieTreeCookieNode, public: | 300 // CookieTreeCookieNode, public: |
| 310 | 301 |
| 311 CookieTreeCookieNode::CookieTreeCookieNode( | 302 CookieTreeCookieNode::CookieTreeCookieNode( |
| 312 std::list<net::CanonicalCookie>::iterator cookie) | 303 std::list<net::CanonicalCookie>::iterator cookie) |
| 313 : CookieTreeNode(base::UTF8ToUTF16(cookie->Name())), | 304 : CookieTreeNode(base::UTF8ToUTF16(cookie->Name())), |
| 314 cookie_(cookie) { | 305 cookie_(cookie) { |
| 315 } | 306 } |
| (...skipping 708 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1024 } | 1015 } |
| 1025 | 1016 |
| 1026 // Returns the index of the icon to use for |node|. Return -1 to use the | 1017 // Returns the index of the icon to use for |node|. Return -1 to use the |
| 1027 // default icon. The index is relative to the list of icons returned from | 1018 // default icon. The index is relative to the list of icons returned from |
| 1028 // GetIcons. | 1019 // GetIcons. |
| 1029 int CookiesTreeModel::GetIconIndex(ui::TreeModelNode* node) { | 1020 int CookiesTreeModel::GetIconIndex(ui::TreeModelNode* node) { |
| 1030 CookieTreeNode* ct_node = static_cast<CookieTreeNode*>(node); | 1021 CookieTreeNode* ct_node = static_cast<CookieTreeNode*>(node); |
| 1031 switch (ct_node->GetDetailedInfo().node_type) { | 1022 switch (ct_node->GetDetailedInfo().node_type) { |
| 1032 case CookieTreeNode::DetailedInfo::TYPE_HOST: | 1023 case CookieTreeNode::DetailedInfo::TYPE_HOST: |
| 1033 return ORIGIN; | 1024 return ORIGIN; |
| 1025 // Fall through each below cases to return COOKIE. | |
| 1034 case CookieTreeNode::DetailedInfo::TYPE_COOKIE: | 1026 case CookieTreeNode::DetailedInfo::TYPE_COOKIE: |
| 1027 case CookieTreeNode::DetailedInfo::TYPE_CHANNEL_ID: | |
| 1035 return COOKIE; | 1028 return COOKIE; |
| 1029 // Fall through each below cases to return DATABASE. | |
| 1036 case CookieTreeNode::DetailedInfo::TYPE_DATABASE: | 1030 case CookieTreeNode::DetailedInfo::TYPE_DATABASE: |
| 1031 case CookieTreeNode::DetailedInfo::TYPE_LOCAL_STORAGE: | |
| 1032 case CookieTreeNode::DetailedInfo::TYPE_SESSION_STORAGE: | |
| 1033 case CookieTreeNode::DetailedInfo::TYPE_APPCACHE: | |
| 1034 case CookieTreeNode::DetailedInfo::TYPE_INDEXED_DB: | |
| 1035 case CookieTreeNode::DetailedInfo::TYPE_FILE_SYSTEM: | |
| 1036 case CookieTreeNode::DetailedInfo::TYPE_SERVICE_WORKER: | |
| 1037 case CookieTreeNode::DetailedInfo::TYPE_CACHE_STORAGE: | |
| 1037 return DATABASE; | 1038 return DATABASE; |
| 1038 case CookieTreeNode::DetailedInfo::TYPE_LOCAL_STORAGE: | |
| 1039 return DATABASE; // close enough | |
| 1040 case CookieTreeNode::DetailedInfo::TYPE_SESSION_STORAGE: | |
| 1041 return DATABASE; // ditto | |
| 1042 case CookieTreeNode::DetailedInfo::TYPE_APPCACHE: | |
| 1043 return DATABASE; // ditto | |
| 1044 case CookieTreeNode::DetailedInfo::TYPE_INDEXED_DB: | |
| 1045 return DATABASE; // ditto | |
| 1046 case CookieTreeNode::DetailedInfo::TYPE_FILE_SYSTEM: | |
| 1047 return DATABASE; // ditto | |
| 1048 case CookieTreeNode::DetailedInfo::TYPE_QUOTA: | 1039 case CookieTreeNode::DetailedInfo::TYPE_QUOTA: |
| 1049 return -1; | 1040 return -1; |
| 1050 case CookieTreeNode::DetailedInfo::TYPE_CHANNEL_ID: | |
| 1051 return COOKIE; // It's kinda like a cookie? | |
| 1052 case CookieTreeNode::DetailedInfo::TYPE_SERVICE_WORKER: | |
| 1053 return DATABASE; // Just like appcache | |
| 1054 case CookieTreeNode::DetailedInfo::TYPE_CACHE_STORAGE: | |
| 1055 return DATABASE; // ditto | |
| 1056 default: | 1041 default: |
| 1057 break; | 1042 break; |
| 1058 } | 1043 } |
| 1059 return -1; | 1044 return -1; |
| 1060 } | 1045 } |
| 1061 | 1046 |
| 1062 void CookiesTreeModel::DeleteAllStoredObjects() { | 1047 void CookiesTreeModel::DeleteAllStoredObjects() { |
| 1063 NotifyObserverBeginBatch(); | 1048 NotifyObserverBeginBatch(); |
| 1064 CookieTreeNode* root = GetRoot(); | 1049 CookieTreeNode* root = GetRoot(); |
| 1065 root->DeleteStoredObjects(); | 1050 root->DeleteStoredObjects(); |
| (...skipping 489 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1555 void CookiesTreeModel::MaybeNotifyBatchesEnded() { | 1540 void CookiesTreeModel::MaybeNotifyBatchesEnded() { |
| 1556 // Only notify the observers if this is the outermost call to EndBatch() if | 1541 // Only notify the observers if this is the outermost call to EndBatch() if |
| 1557 // called in a nested manner. | 1542 // called in a nested manner. |
| 1558 if (batches_ended_ == batches_started_ && | 1543 if (batches_ended_ == batches_started_ && |
| 1559 batches_seen_ == batches_expected_) { | 1544 batches_seen_ == batches_expected_) { |
| 1560 FOR_EACH_OBSERVER(Observer, | 1545 FOR_EACH_OBSERVER(Observer, |
| 1561 cookies_observer_list_, | 1546 cookies_observer_list_, |
| 1562 TreeModelEndBatch(this)); | 1547 TreeModelEndBatch(this)); |
| 1563 } | 1548 } |
| 1564 } | 1549 } |
| OLD | NEW |