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

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

Issue 7491085: Revert 95607 - Adding usage entry to chrome://settings/cookies. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Created 9 years, 4 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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 #ifndef CHROME_BROWSER_COOKIES_TREE_MODEL_H_ 5 #ifndef CHROME_BROWSER_COOKIES_TREE_MODEL_H_
6 #define CHROME_BROWSER_COOKIES_TREE_MODEL_H_ 6 #define CHROME_BROWSER_COOKIES_TREE_MODEL_H_
7 #pragma once 7 #pragma once
8 8
9 // TODO(viettrungluu): This header file #includes far too much and has too much 9 // TODO(viettrungluu): This header file #includes far too much and has too much
10 // inline code (which shouldn't be inline). 10 // inline code (which shouldn't be inline).
11 11
12 #include <string> 12 #include <string>
13 #include <vector> 13 #include <vector>
14 14
15 #include "base/memory/ref_counted.h" 15 #include "base/memory/ref_counted.h"
16 #include "base/observer_list.h" 16 #include "base/observer_list.h"
17 #include "base/string16.h" 17 #include "base/string16.h"
18 #include "base/utf_string_conversions.h" 18 #include "base/utf_string_conversions.h"
19 #include "chrome/browser/browsing_data_appcache_helper.h" 19 #include "chrome/browser/browsing_data_appcache_helper.h"
20 #include "chrome/browser/browsing_data_database_helper.h" 20 #include "chrome/browser/browsing_data_database_helper.h"
21 #include "chrome/browser/browsing_data_file_system_helper.h" 21 #include "chrome/browser/browsing_data_file_system_helper.h"
22 #include "chrome/browser/browsing_data_indexed_db_helper.h" 22 #include "chrome/browser/browsing_data_indexed_db_helper.h"
23 #include "chrome/browser/browsing_data_local_storage_helper.h" 23 #include "chrome/browser/browsing_data_local_storage_helper.h"
24 #include "chrome/browser/browsing_data_quota_helper.h"
25 #include "chrome/common/content_settings.h" 24 #include "chrome/common/content_settings.h"
26 #include "net/base/cookie_monster.h" 25 #include "net/base/cookie_monster.h"
27 #include "ui/base/models/tree_node_model.h" 26 #include "ui/base/models/tree_node_model.h"
28 27
29 class CookiesTreeModel; 28 class CookiesTreeModel;
30 class CookieTreeAppCacheNode; 29 class CookieTreeAppCacheNode;
31 class CookieTreeAppCachesNode; 30 class CookieTreeAppCachesNode;
32 class CookieTreeCookieNode; 31 class CookieTreeCookieNode;
33 class CookieTreeCookiesNode; 32 class CookieTreeCookiesNode;
34 class CookieTreeDatabaseNode; 33 class CookieTreeDatabaseNode;
35 class CookieTreeDatabasesNode; 34 class CookieTreeDatabasesNode;
36 class CookieTreeFileSystemsNode; 35 class CookieTreeFileSystemsNode;
37 class CookieTreeFileSystemNode; 36 class CookieTreeFileSystemNode;
38 class CookieTreeLocalStorageNode; 37 class CookieTreeLocalStorageNode;
39 class CookieTreeLocalStoragesNode; 38 class CookieTreeLocalStoragesNode;
40 class CookieTreeQuotaNode;
41 class CookieTreeSessionStorageNode; 39 class CookieTreeSessionStorageNode;
42 class CookieTreeSessionStoragesNode; 40 class CookieTreeSessionStoragesNode;
43 class CookieTreeIndexedDBNode; 41 class CookieTreeIndexedDBNode;
44 class CookieTreeIndexedDBsNode; 42 class CookieTreeIndexedDBsNode;
45 class CookieTreeOriginNode; 43 class CookieTreeOriginNode;
46 class HostContentSettingsMap; 44 class HostContentSettingsMap;
47 45
48 // CookieTreeNode ------------------------------------------------------------- 46 // CookieTreeNode -------------------------------------------------------------
49 // The base node type in the Cookies, Databases, and Local Storage options 47 // The base node type in the Cookies, Databases, and Local Storage options
50 // view, from which all other types are derived. Specialized from TreeNode in 48 // view, from which all other types are derived. Specialized from TreeNode in
(...skipping 13 matching lines...) Expand all
64 TYPE_DATABASES, // This is used for CookieTreeDatabasesNode. 62 TYPE_DATABASES, // This is used for CookieTreeDatabasesNode.
65 TYPE_DATABASE, // This is used for CookieTreeDatabaseNode. 63 TYPE_DATABASE, // This is used for CookieTreeDatabaseNode.
66 TYPE_LOCAL_STORAGES, // This is used for CookieTreeLocalStoragesNode. 64 TYPE_LOCAL_STORAGES, // This is used for CookieTreeLocalStoragesNode.
67 TYPE_LOCAL_STORAGE, // This is used for CookieTreeLocalStorageNode. 65 TYPE_LOCAL_STORAGE, // This is used for CookieTreeLocalStorageNode.
68 TYPE_SESSION_STORAGES, // This is used for CookieTreeSessionStoragesNode. 66 TYPE_SESSION_STORAGES, // This is used for CookieTreeSessionStoragesNode.
69 TYPE_SESSION_STORAGE, // This is used for CookieTreeSessionStorageNode. 67 TYPE_SESSION_STORAGE, // This is used for CookieTreeSessionStorageNode.
70 TYPE_APPCACHES, // This is used for CookieTreeAppCachesNode. 68 TYPE_APPCACHES, // This is used for CookieTreeAppCachesNode.
71 TYPE_APPCACHE, // This is used for CookieTreeAppCacheNode. 69 TYPE_APPCACHE, // This is used for CookieTreeAppCacheNode.
72 TYPE_INDEXED_DBS, // This is used for CookieTreeIndexedDBsNode. 70 TYPE_INDEXED_DBS, // This is used for CookieTreeIndexedDBsNode.
73 TYPE_INDEXED_DB, // This is used for CookieTreeIndexedDBNode. 71 TYPE_INDEXED_DB, // This is used for CookieTreeIndexedDBNode.
74 TYPE_FILE_SYSTEMS, // This is used for CookieTreeFileSystemsNode. 72 TYPE_FILE_SYSTEMS, // This is used for CookieTreeFileSystemsNode.
75 TYPE_FILE_SYSTEM, // This is used for CookieTreeFileSystemNode. 73 TYPE_FILE_SYSTEM, // This is used for CookieTreeFileSystemNode.
76 TYPE_QUOTA, // This is used for CookieTreeQuotaNode.
77 }; 74 };
78 75
79 // TODO(viettrungluu): Figure out whether we want to store |origin| as a 76 // TODO(viettrungluu): Figure out whether we want to store |origin| as a
80 // |string16| or a (UTF-8) |std::string|, and convert. Remove constructor 77 // |string16| or a (UTF-8) |std::string|, and convert. Remove constructor
81 // taking an |std::wstring|. 78 // taking an |std::wstring|.
82 DetailedInfo(const string16& origin, NodeType node_type, 79 DetailedInfo(const string16& origin, NodeType node_type,
83 const net::CookieMonster::CanonicalCookie* cookie, 80 const net::CookieMonster::CanonicalCookie* cookie,
84 const BrowsingDataDatabaseHelper::DatabaseInfo* database_info, 81 const BrowsingDataDatabaseHelper::DatabaseInfo* database_info,
85 const BrowsingDataLocalStorageHelper::LocalStorageInfo* 82 const BrowsingDataLocalStorageHelper::LocalStorageInfo*
86 local_storage_info, 83 local_storage_info,
87 const BrowsingDataLocalStorageHelper::LocalStorageInfo* 84 const BrowsingDataLocalStorageHelper::LocalStorageInfo*
88 session_storage_info, 85 session_storage_info,
89 const appcache::AppCacheInfo* appcache_info, 86 const appcache::AppCacheInfo* appcache_info,
90 const BrowsingDataIndexedDBHelper::IndexedDBInfo* indexed_db_info, 87 const BrowsingDataIndexedDBHelper::IndexedDBInfo* indexed_db_info,
91 const BrowsingDataFileSystemHelper::FileSystemInfo* file_system_info, 88 const BrowsingDataFileSystemHelper::FileSystemInfo* file_system_info)
92 const BrowsingDataQuotaHelper::QuotaInfo* quota_info)
93 : origin(UTF16ToWideHack(origin)), 89 : origin(UTF16ToWideHack(origin)),
94 node_type(node_type), 90 node_type(node_type),
95 cookie(cookie), 91 cookie(cookie),
96 database_info(database_info), 92 database_info(database_info),
97 local_storage_info(local_storage_info), 93 local_storage_info(local_storage_info),
98 session_storage_info(session_storage_info), 94 session_storage_info(session_storage_info),
99 appcache_info(appcache_info), 95 appcache_info(appcache_info),
100 indexed_db_info(indexed_db_info), 96 indexed_db_info(indexed_db_info),
101 file_system_info(file_system_info), 97 file_system_info(file_system_info) {
102 quota_info(quota_info) {
103 DCHECK((node_type != TYPE_DATABASE) || database_info); 98 DCHECK((node_type != TYPE_DATABASE) || database_info);
104 DCHECK((node_type != TYPE_LOCAL_STORAGE) || local_storage_info); 99 DCHECK((node_type != TYPE_LOCAL_STORAGE) || local_storage_info);
105 DCHECK((node_type != TYPE_SESSION_STORAGE) || session_storage_info); 100 DCHECK((node_type != TYPE_SESSION_STORAGE) || session_storage_info);
106 DCHECK((node_type != TYPE_APPCACHE) || appcache_info); 101 DCHECK((node_type != TYPE_APPCACHE) || appcache_info);
107 DCHECK((node_type != TYPE_INDEXED_DB) || indexed_db_info); 102 DCHECK((node_type != TYPE_INDEXED_DB) || indexed_db_info);
108 DCHECK((node_type != TYPE_FILE_SYSTEM) || file_system_info); 103 DCHECK((node_type != TYPE_FILE_SYSTEM) || file_system_info);
109 DCHECK((node_type != TYPE_QUOTA) || quota_info);
110 } 104 }
111 #if !defined(WCHAR_T_IS_UTF16) 105 #if !defined(WCHAR_T_IS_UTF16)
112 DetailedInfo(const std::wstring& origin, NodeType node_type, 106 DetailedInfo(const std::wstring& origin, NodeType node_type,
113 const net::CookieMonster::CanonicalCookie* cookie, 107 const net::CookieMonster::CanonicalCookie* cookie,
114 const BrowsingDataDatabaseHelper::DatabaseInfo* database_info, 108 const BrowsingDataDatabaseHelper::DatabaseInfo* database_info,
115 const BrowsingDataLocalStorageHelper::LocalStorageInfo* 109 const BrowsingDataLocalStorageHelper::LocalStorageInfo*
116 local_storage_info, 110 local_storage_info,
117 const BrowsingDataLocalStorageHelper::LocalStorageInfo* 111 const BrowsingDataLocalStorageHelper::LocalStorageInfo*
118 session_storage_info, 112 session_storage_info,
119 const appcache::AppCacheInfo* appcache_info, 113 const appcache::AppCacheInfo* appcache_info,
120 const BrowsingDataIndexedDBHelper::IndexedDBInfo* indexed_db_info, 114 const BrowsingDataIndexedDBHelper::IndexedDBInfo* indexed_db_info,
121 const BrowsingDataFileSystemHelper::FileSystemInfo* file_system_info, 115 const BrowsingDataFileSystemHelper::FileSystemInfo* file_system_info)
122 const BrowsingDataQuotaHelper::QuotaInfo* quota_info)
123 : origin(origin), 116 : origin(origin),
124 node_type(node_type), 117 node_type(node_type),
125 cookie(cookie), 118 cookie(cookie),
126 database_info(database_info), 119 database_info(database_info),
127 local_storage_info(local_storage_info), 120 local_storage_info(local_storage_info),
128 session_storage_info(session_storage_info), 121 session_storage_info(session_storage_info),
129 appcache_info(appcache_info), 122 appcache_info(appcache_info),
130 indexed_db_info(indexed_db_info), 123 indexed_db_info(indexed_db_info),
131 file_system_info(file_system_info), 124 file_system_info(file_system_info) {
132 quota_info(quota_info) {
133 DCHECK((node_type != TYPE_DATABASE) || database_info); 125 DCHECK((node_type != TYPE_DATABASE) || database_info);
134 DCHECK((node_type != TYPE_LOCAL_STORAGE) || local_storage_info); 126 DCHECK((node_type != TYPE_LOCAL_STORAGE) || local_storage_info);
135 DCHECK((node_type != TYPE_SESSION_STORAGE) || session_storage_info); 127 DCHECK((node_type != TYPE_SESSION_STORAGE) || session_storage_info);
136 DCHECK((node_type != TYPE_APPCACHE) || appcache_info); 128 DCHECK((node_type != TYPE_APPCACHE) || appcache_info);
137 DCHECK((node_type != TYPE_INDEXED_DB) || indexed_db_info); 129 DCHECK((node_type != TYPE_INDEXED_DB) || indexed_db_info);
138 DCHECK((node_type != TYPE_FILE_SYSTEM) || file_system_info); 130 DCHECK((node_type != TYPE_FILE_SYSTEM) || file_system_info);
139 DCHECK((node_type != TYPE_QUOTA) || quota_info);
140 } 131 }
141 #endif 132 #endif
142 133
143 std::wstring origin; 134 std::wstring origin;
144 NodeType node_type; 135 NodeType node_type;
145 const net::CookieMonster::CanonicalCookie* cookie; 136 const net::CookieMonster::CanonicalCookie* cookie;
146 const BrowsingDataDatabaseHelper::DatabaseInfo* database_info; 137 const BrowsingDataDatabaseHelper::DatabaseInfo* database_info;
147 const BrowsingDataLocalStorageHelper::LocalStorageInfo* local_storage_info; 138 const BrowsingDataLocalStorageHelper::LocalStorageInfo* local_storage_info;
148 const BrowsingDataLocalStorageHelper::LocalStorageInfo* 139 const BrowsingDataLocalStorageHelper::LocalStorageInfo*
149 session_storage_info; 140 session_storage_info;
150 const appcache::AppCacheInfo* appcache_info; 141 const appcache::AppCacheInfo* appcache_info;
151 const BrowsingDataIndexedDBHelper::IndexedDBInfo* indexed_db_info; 142 const BrowsingDataIndexedDBHelper::IndexedDBInfo* indexed_db_info;
152 const BrowsingDataFileSystemHelper::FileSystemInfo* file_system_info; 143 const BrowsingDataFileSystemHelper::FileSystemInfo* file_system_info;
153 const BrowsingDataQuotaHelper::QuotaInfo* quota_info;
154 }; 144 };
155 145
156 CookieTreeNode() {} 146 CookieTreeNode() {}
157 explicit CookieTreeNode(const string16& title) 147 explicit CookieTreeNode(const string16& title)
158 : ui::TreeNode<CookieTreeNode>(title) {} 148 : ui::TreeNode<CookieTreeNode>(title) {}
159 virtual ~CookieTreeNode() {} 149 virtual ~CookieTreeNode() {}
160 150
161 // Delete backend storage for this node, and any children nodes. (E.g. delete 151 // Delete backend storage for this node, and any children nodes. (E.g. delete
162 // the cookie from CookieMonster, clear the database, and so forth.) 152 // the cookie from CookieMonster, clear the database, and so forth.)
163 virtual void DeleteStoredObjects(); 153 virtual void DeleteStoredObjects();
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after
214 virtual DetailedInfo GetDetailedInfo() const; 204 virtual DetailedInfo GetDetailedInfo() const;
215 205
216 // CookieTreeOriginNode methods: 206 // CookieTreeOriginNode methods:
217 CookieTreeCookiesNode* GetOrCreateCookiesNode(); 207 CookieTreeCookiesNode* GetOrCreateCookiesNode();
218 CookieTreeDatabasesNode* GetOrCreateDatabasesNode(); 208 CookieTreeDatabasesNode* GetOrCreateDatabasesNode();
219 CookieTreeLocalStoragesNode* GetOrCreateLocalStoragesNode(); 209 CookieTreeLocalStoragesNode* GetOrCreateLocalStoragesNode();
220 CookieTreeSessionStoragesNode* GetOrCreateSessionStoragesNode(); 210 CookieTreeSessionStoragesNode* GetOrCreateSessionStoragesNode();
221 CookieTreeAppCachesNode* GetOrCreateAppCachesNode(); 211 CookieTreeAppCachesNode* GetOrCreateAppCachesNode();
222 CookieTreeIndexedDBsNode* GetOrCreateIndexedDBsNode(); 212 CookieTreeIndexedDBsNode* GetOrCreateIndexedDBsNode();
223 CookieTreeFileSystemsNode* GetOrCreateFileSystemsNode(); 213 CookieTreeFileSystemsNode* GetOrCreateFileSystemsNode();
224 CookieTreeQuotaNode* UpdateOrCreateQuotaNode(
225 BrowsingDataQuotaHelper::QuotaInfo* quota_info);
226 214
227 // Creates an content exception for this origin of type 215 // Creates an content exception for this origin of type
228 // CONTENT_SETTINGS_TYPE_COOKIES. 216 // CONTENT_SETTINGS_TYPE_COOKIES.
229 void CreateContentException(HostContentSettingsMap* content_settings, 217 void CreateContentException(HostContentSettingsMap* content_settings,
230 ContentSetting setting) const; 218 ContentSetting setting) const;
231 219
232 // True if a content exception can be created for this origin. 220 // True if a content exception can be created for this origin.
233 bool CanCreateContentException() const; 221 bool CanCreateContentException() const;
234 222
235 private: 223 private:
236 // Pointers to the cookies, databases, local and session storage and appcache 224 // Pointers to the cookies, databases, local and session storage and appcache
237 // nodes. When we build up the tree we need to quickly get a reference to 225 // nodes. When we build up the tree we need to quickly get a reference to
238 // the COOKIES node to add children. Checking each child and interrogating 226 // the COOKIES node to add children. Checking each child and interrogating
239 // them to see if they are a COOKIES, APPCACHES, DATABASES etc node seems 227 // them to see if they are a COOKIES, APPCACHES, DATABASES etc node seems
240 // less preferable than storing an extra pointer per origin. 228 // less preferable than storing an extra pointer per origin.
241 CookieTreeCookiesNode* cookies_child_; 229 CookieTreeCookiesNode* cookies_child_;
242 CookieTreeDatabasesNode* databases_child_; 230 CookieTreeDatabasesNode* databases_child_;
243 CookieTreeLocalStoragesNode* local_storages_child_; 231 CookieTreeLocalStoragesNode* local_storages_child_;
244 CookieTreeSessionStoragesNode* session_storages_child_; 232 CookieTreeSessionStoragesNode* session_storages_child_;
245 CookieTreeAppCachesNode* appcaches_child_; 233 CookieTreeAppCachesNode* appcaches_child_;
246 CookieTreeIndexedDBsNode* indexed_dbs_child_; 234 CookieTreeIndexedDBsNode* indexed_dbs_child_;
247 CookieTreeFileSystemsNode* file_systems_child_; 235 CookieTreeFileSystemsNode* file_systems_child_;
248 CookieTreeQuotaNode* quota_child_;
249 236
250 // The URL for which this node was initially created. 237 // The URL for which this node was initially created.
251 GURL url_; 238 GURL url_;
252 239
253 DISALLOW_COPY_AND_ASSIGN(CookieTreeOriginNode); 240 DISALLOW_COPY_AND_ASSIGN(CookieTreeOriginNode);
254 }; 241 };
255 242
256 // CookieTreeCookieNode ------------------------------------------------------ 243 // CookieTreeCookieNode ------------------------------------------------------
257 class CookieTreeCookieNode : public CookieTreeNode { 244 class CookieTreeCookieNode : public CookieTreeNode {
258 public: 245 public:
(...skipping 245 matching lines...) Expand 10 before | Expand all | Expand 10 after
504 virtual DetailedInfo GetDetailedInfo() const; 491 virtual DetailedInfo GetDetailedInfo() const;
505 492
506 void AddIndexedDBNode(CookieTreeIndexedDBNode* child) { 493 void AddIndexedDBNode(CookieTreeIndexedDBNode* child) {
507 AddChildSortedByTitle(child); 494 AddChildSortedByTitle(child);
508 } 495 }
509 496
510 private: 497 private:
511 DISALLOW_COPY_AND_ASSIGN(CookieTreeIndexedDBsNode); 498 DISALLOW_COPY_AND_ASSIGN(CookieTreeIndexedDBsNode);
512 }; 499 };
513 500
514 // CookieTreeQuotaNode --------------------------------------------------
515 class CookieTreeQuotaNode : public CookieTreeNode {
516 public:
517 // Does not take ownership of quota_info, and quota_info should remain valid
518 // at least as long as the CookieTreeQuotaNode is valid.
519 explicit CookieTreeQuotaNode(BrowsingDataQuotaHelper::QuotaInfo* quota_info);
520 virtual ~CookieTreeQuotaNode();
521
522 virtual void DeleteStoredObjects();
523 virtual DetailedInfo GetDetailedInfo() const;
524
525 private:
526 // quota_info_ is not owned by the node, and is expected to remain valid as
527 // long as the CookieTreeQuotaNode is valid.
528 BrowsingDataQuotaHelper::QuotaInfo* quota_info_;
529
530 DISALLOW_COPY_AND_ASSIGN(CookieTreeQuotaNode);
531 };
532 501
533 // CookiesTreeModel ----------------------------------------------------------- 502 // CookiesTreeModel -----------------------------------------------------------
534 class CookiesTreeModel : public ui::TreeNodeModel<CookieTreeNode> { 503 class CookiesTreeModel : public ui::TreeNodeModel<CookieTreeNode> {
535 public: 504 public:
536 // Because non-cookie nodes are fetched in a background thread, they are not 505 // Because non-cookie nodes are fetched in a background thread, they are not
537 // present at the time the Model is created. The Model then notifies its 506 // present at the time the Model is created. The Model then notifies its
538 // observers for every item added from databases, local storage, and 507 // observers for every item added from databases, local storage, and
539 // appcache. We extend the Observer interface to add notifications before and 508 // appcache. We extend the Observer interface to add notifications before and
540 // after these batch inserts. 509 // after these batch inserts.
541 class Observer : public ui::TreeModelObserver { 510 class Observer : public ui::TreeModelObserver {
542 public: 511 public:
543 virtual void TreeModelBeginBatch(CookiesTreeModel* model) {} 512 virtual void TreeModelBeginBatch(CookiesTreeModel* model) {}
544 virtual void TreeModelEndBatch(CookiesTreeModel* model) {} 513 virtual void TreeModelEndBatch(CookiesTreeModel* model) {}
545 }; 514 };
546 515
547 CookiesTreeModel( 516 CookiesTreeModel(
548 net::CookieMonster* cookie_monster_, 517 net::CookieMonster* cookie_monster_,
549 BrowsingDataDatabaseHelper* database_helper, 518 BrowsingDataDatabaseHelper* database_helper,
550 BrowsingDataLocalStorageHelper* local_storage_helper, 519 BrowsingDataLocalStorageHelper* local_storage_helper,
551 BrowsingDataLocalStorageHelper* session_storage_helper, 520 BrowsingDataLocalStorageHelper* session_storage_helper,
552 BrowsingDataAppCacheHelper* appcache_helper, 521 BrowsingDataAppCacheHelper* appcache_helper,
553 BrowsingDataIndexedDBHelper* indexed_db_helper, 522 BrowsingDataIndexedDBHelper* indexed_db_helper,
554 BrowsingDataFileSystemHelper* file_system_helper, 523 BrowsingDataFileSystemHelper* file_system_helper,
555 BrowsingDataQuotaHelper* quota_helper,
556 bool use_cookie_source); 524 bool use_cookie_source);
557 virtual ~CookiesTreeModel(); 525 virtual ~CookiesTreeModel();
558 526
559 // ui::TreeModel methods: 527 // ui::TreeModel methods:
560 // Returns the set of icons for the nodes in the tree. You only need override 528 // Returns the set of icons for the nodes in the tree. You only need override
561 // this if you don't want to use the default folder icons. 529 // this if you don't want to use the default folder icons.
562 virtual void GetIcons(std::vector<SkBitmap>* icons); 530 virtual void GetIcons(std::vector<SkBitmap>* icons);
563 531
564 // Returns the index of the icon to use for |node|. Return -1 to use the 532 // Returns the index of the icon to use for |node|. Return -1 to use the
565 // default icon. The index is relative to the list of icons returned from 533 // default icon. The index is relative to the list of icons returned from
(...skipping 24 matching lines...) Expand all
590 typedef std::vector<BrowsingDataDatabaseHelper::DatabaseInfo> 558 typedef std::vector<BrowsingDataDatabaseHelper::DatabaseInfo>
591 DatabaseInfoList; 559 DatabaseInfoList;
592 typedef std::vector<BrowsingDataLocalStorageHelper::LocalStorageInfo> 560 typedef std::vector<BrowsingDataLocalStorageHelper::LocalStorageInfo>
593 LocalStorageInfoList; 561 LocalStorageInfoList;
594 typedef std::vector<BrowsingDataLocalStorageHelper::LocalStorageInfo> 562 typedef std::vector<BrowsingDataLocalStorageHelper::LocalStorageInfo>
595 SessionStorageInfoList; 563 SessionStorageInfoList;
596 typedef std::vector<BrowsingDataIndexedDBHelper::IndexedDBInfo> 564 typedef std::vector<BrowsingDataIndexedDBHelper::IndexedDBInfo>
597 IndexedDBInfoList; 565 IndexedDBInfoList;
598 typedef std::vector<BrowsingDataFileSystemHelper::FileSystemInfo> 566 typedef std::vector<BrowsingDataFileSystemHelper::FileSystemInfo>
599 FileSystemInfoList; 567 FileSystemInfoList;
600 typedef std::vector<BrowsingDataQuotaHelper::QuotaInfo> QuotaInfoArray;
601 568
602 void LoadCookies(); 569 void LoadCookies();
603 void LoadCookiesWithFilter(const std::wstring& filter); 570 void LoadCookiesWithFilter(const std::wstring& filter);
604 571
605 void OnAppCacheModelInfoLoaded(); 572 void OnAppCacheModelInfoLoaded();
606 void OnDatabaseModelInfoLoaded(const DatabaseInfoList& database_info); 573 void OnDatabaseModelInfoLoaded(const DatabaseInfoList& database_info);
607 void OnLocalStorageModelInfoLoaded( 574 void OnLocalStorageModelInfoLoaded(
608 const LocalStorageInfoList& local_storage_info); 575 const LocalStorageInfoList& local_storage_info);
609 void OnSessionStorageModelInfoLoaded( 576 void OnSessionStorageModelInfoLoaded(
610 const LocalStorageInfoList& local_storage_info); 577 const LocalStorageInfoList& local_storage_info);
611 void OnIndexedDBModelInfoLoaded( 578 void OnIndexedDBModelInfoLoaded(
612 const IndexedDBInfoList& indexed_db_info); 579 const IndexedDBInfoList& indexed_db_info);
613 void OnFileSystemModelInfoLoaded( 580 void OnFileSystemModelInfoLoaded(
614 const FileSystemInfoList& file_system_info); 581 const FileSystemInfoList& file_system_info);
615 void OnQuotaModelInfoLoaded(const QuotaInfoArray& quota_info);
616 582
617 void PopulateAppCacheInfoWithFilter(const std::wstring& filter); 583 void PopulateAppCacheInfoWithFilter(const std::wstring& filter);
618 void PopulateDatabaseInfoWithFilter(const std::wstring& filter); 584 void PopulateDatabaseInfoWithFilter(const std::wstring& filter);
619 void PopulateLocalStorageInfoWithFilter(const std::wstring& filter); 585 void PopulateLocalStorageInfoWithFilter(const std::wstring& filter);
620 void PopulateSessionStorageInfoWithFilter(const std::wstring& filter); 586 void PopulateSessionStorageInfoWithFilter(const std::wstring& filter);
621 void PopulateIndexedDBInfoWithFilter(const std::wstring& filter); 587 void PopulateIndexedDBInfoWithFilter(const std::wstring& filter);
622 void PopulateFileSystemInfoWithFilter(const std::wstring& filter); 588 void PopulateFileSystemInfoWithFilter(const std::wstring& filter);
623 void PopulateQuotaInfoWithFilter(const std::wstring& filter);
624 589
625 void NotifyObserverBeginBatch(); 590 void NotifyObserverBeginBatch();
626 void NotifyObserverEndBatch(); 591 void NotifyObserverEndBatch();
627 592
628 scoped_refptr<net::CookieMonster> cookie_monster_; 593 scoped_refptr<net::CookieMonster> cookie_monster_;
629 CookieList all_cookies_; 594 CookieList all_cookies_;
630 595
631 scoped_refptr<BrowsingDataAppCacheHelper> appcache_helper_; 596 scoped_refptr<BrowsingDataAppCacheHelper> appcache_helper_;
632 scoped_refptr<BrowsingDataDatabaseHelper> database_helper_; 597 scoped_refptr<BrowsingDataDatabaseHelper> database_helper_;
633 scoped_refptr<appcache::AppCacheInfoCollection> appcache_info_; 598 scoped_refptr<appcache::AppCacheInfoCollection> appcache_info_;
634 DatabaseInfoList database_info_list_; 599 DatabaseInfoList database_info_list_;
635 600
636 scoped_refptr<BrowsingDataLocalStorageHelper> local_storage_helper_; 601 scoped_refptr<BrowsingDataLocalStorageHelper> local_storage_helper_;
637 scoped_refptr<BrowsingDataLocalStorageHelper> session_storage_helper_; 602 scoped_refptr<BrowsingDataLocalStorageHelper> session_storage_helper_;
638 scoped_refptr<BrowsingDataIndexedDBHelper> indexed_db_helper_; 603 scoped_refptr<BrowsingDataIndexedDBHelper> indexed_db_helper_;
639 scoped_refptr<BrowsingDataFileSystemHelper> file_system_helper_; 604 scoped_refptr<BrowsingDataFileSystemHelper> file_system_helper_;
640 scoped_refptr<BrowsingDataQuotaHelper> quota_helper_;
641 LocalStorageInfoList local_storage_info_list_; 605 LocalStorageInfoList local_storage_info_list_;
642 LocalStorageInfoList session_storage_info_list_; 606 LocalStorageInfoList session_storage_info_list_;
643 IndexedDBInfoList indexed_db_info_list_; 607 IndexedDBInfoList indexed_db_info_list_;
644 FileSystemInfoList file_system_info_list_; 608 FileSystemInfoList file_system_info_list_;
645 QuotaInfoArray quota_info_list_;
646 609
647 // The CookiesTreeModel maintains a separate list of observers that are 610 // The CookiesTreeModel maintains a separate list of observers that are
648 // specifically of the type CookiesTreeModel::Observer. 611 // specifically of the type CookiesTreeModel::Observer.
649 ObserverList<Observer> cookies_observer_list_; 612 ObserverList<Observer> cookies_observer_list_;
650 613
651 // If this is non-zero, then this model is batching updates (there's a lot of 614 // If this is non-zero, then this model is batching updates (there's a lot of
652 // notifications coming down the pipe). This is an integer is used to balance 615 // notifications coming down the pipe). This is an integer is used to balance
653 // calls to Begin/EndBatch() if they're called in a nested manner. 616 // calls to Begin/EndBatch() if they're called in a nested manner.
654 int batch_update_; 617 int batch_update_;
655 618
656 // If true, use the CanonicalCookie::Source attribute to group cookies. 619 // If true, use the CanonicalCookie::Source attribute to group cookies.
657 // Otherwise, use the CanonicalCookie::Domain attribute. 620 // Otherwise, use the CanonicalCookie::Domain attribute.
658 bool use_cookie_source_; 621 bool use_cookie_source_;
659 622
660 friend class CookieTreeAppCacheNode; 623 friend class CookieTreeAppCacheNode;
661 friend class CookieTreeCookieNode; 624 friend class CookieTreeCookieNode;
662 friend class CookieTreeDatabaseNode; 625 friend class CookieTreeDatabaseNode;
663 friend class CookieTreeLocalStorageNode; 626 friend class CookieTreeLocalStorageNode;
664 friend class CookieTreeIndexedDBNode; 627 friend class CookieTreeIndexedDBNode;
665 friend class CookieTreeFileSystemNode; 628 friend class CookieTreeFileSystemNode;
666 friend class CookieTreeQuotaNode;
667 629
668 DISALLOW_COPY_AND_ASSIGN(CookiesTreeModel); 630 DISALLOW_COPY_AND_ASSIGN(CookiesTreeModel);
669 }; 631 };
670 632
671 #endif // CHROME_BROWSER_COOKIES_TREE_MODEL_H_ 633 #endif // CHROME_BROWSER_COOKIES_TREE_MODEL_H_
OLDNEW
« no previous file with comments | « chrome/browser/content_settings/tab_specific_content_settings.cc ('k') | chrome/browser/cookies_tree_model.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698