tree: ddfe05109a92ac8602c9ce05f9d605deda4c9f9d [path history] [tgz]
  1. OWNERS
  2. README.md
  3. browsing_data_appcache_helper.cc
  4. browsing_data_appcache_helper.h
  5. browsing_data_appcache_helper_unittest.cc
  6. browsing_data_cache_storage_helper.cc
  7. browsing_data_cache_storage_helper.h
  8. browsing_data_cache_storage_helper_browsertest.cc
  9. browsing_data_cache_storage_helper_unittest.cc
  10. browsing_data_cookie_helper.cc
  11. browsing_data_cookie_helper.h
  12. browsing_data_cookie_helper_unittest.cc
  13. browsing_data_database_helper.cc
  14. browsing_data_database_helper.h
  15. browsing_data_database_helper_browsertest.cc
  16. browsing_data_database_helper_unittest.cc
  17. browsing_data_file_system_helper.cc
  18. browsing_data_file_system_helper.h
  19. browsing_data_file_system_helper_unittest.cc
  20. browsing_data_flash_lso_helper.cc
  21. browsing_data_flash_lso_helper.h
  22. browsing_data_helper.cc
  23. browsing_data_helper.h
  24. browsing_data_helper_browsertest.h
  25. browsing_data_helper_unittest.cc
  26. browsing_data_history_observer_service.cc
  27. browsing_data_history_observer_service.h
  28. browsing_data_important_sites_util.cc
  29. browsing_data_important_sites_util.h
  30. browsing_data_indexed_db_helper.cc
  31. browsing_data_indexed_db_helper.h
  32. browsing_data_indexed_db_helper_browsertest.cc
  33. browsing_data_indexed_db_helper_unittest.cc
  34. browsing_data_local_storage_helper.cc
  35. browsing_data_local_storage_helper.h
  36. browsing_data_local_storage_helper_browsertest.cc
  37. browsing_data_local_storage_helper_unittest.cc
  38. browsing_data_media_license_helper.cc
  39. browsing_data_media_license_helper.h
  40. browsing_data_media_license_helper_unittest.cc
  41. browsing_data_quota_helper.cc
  42. browsing_data_quota_helper.h
  43. browsing_data_quota_helper_impl.cc
  44. browsing_data_quota_helper_impl.h
  45. browsing_data_quota_helper_unittest.cc
  46. browsing_data_remover_browsertest.cc
  47. browsing_data_service_worker_helper.cc
  48. browsing_data_service_worker_helper.h
  49. browsing_data_service_worker_helper_unittest.cc
  50. browsing_data_shared_worker_helper.cc
  51. browsing_data_shared_worker_helper.h
  52. browsing_data_shared_worker_helper_unittest.cc
  53. canonical_cookie_hash.cc
  54. canonical_cookie_hash.h
  55. chrome_browsing_data_remover_delegate.cc
  56. chrome_browsing_data_remover_delegate.h
  57. chrome_browsing_data_remover_delegate_factory.cc
  58. chrome_browsing_data_remover_delegate_factory.h
  59. chrome_browsing_data_remover_delegate_unittest.cc
  60. cookies_tree_model.cc
  61. cookies_tree_model.h
  62. cookies_tree_model_unittest.cc
  63. counters/
  64. local_data_container.cc
  65. local_data_container.h
  66. mock_browsing_data_appcache_helper.cc
  67. mock_browsing_data_appcache_helper.h
  68. mock_browsing_data_cache_storage_helper.cc
  69. mock_browsing_data_cache_storage_helper.h
  70. mock_browsing_data_cookie_helper.cc
  71. mock_browsing_data_cookie_helper.h
  72. mock_browsing_data_database_helper.cc
  73. mock_browsing_data_database_helper.h
  74. mock_browsing_data_file_system_helper.cc
  75. mock_browsing_data_file_system_helper.h
  76. mock_browsing_data_flash_lso_helper.cc
  77. mock_browsing_data_flash_lso_helper.h
  78. mock_browsing_data_indexed_db_helper.cc
  79. mock_browsing_data_indexed_db_helper.h
  80. mock_browsing_data_local_storage_helper.cc
  81. mock_browsing_data_local_storage_helper.h
  82. mock_browsing_data_media_license_helper.cc
  83. mock_browsing_data_media_license_helper.h
  84. mock_browsing_data_quota_helper.cc
  85. mock_browsing_data_quota_helper.h
  86. mock_browsing_data_service_worker_helper.cc
  87. mock_browsing_data_service_worker_helper.h
  88. mock_browsing_data_shared_worker_helper.cc
  89. mock_browsing_data_shared_worker_helper.h
  90. navigation_entry_remover.cc
  91. navigation_entry_remover.h
  92. navigation_entry_remover_browsertest.cc
  93. site_data_size_collector.cc
  94. site_data_size_collector.h
  95. site_data_size_collector_unittest.cc
chrome/browser/browsing_data/README.md

CookiesTreeModel

A CookiesTreeModel is instantiated in multiple places in Chrome:

BrowsingDataXYZHelper

Instances of this type are used to fully populate a CookiesTreeModel with full details (e.g. origin/size/modified) for different storage types, e.g. to report storage used by all origins.

When StartFetching is called, a call is made into the relevant storage context to enumerate usage info - usually, a set of tuples of (origin, size, last modified). The CookiesTreeModel assembles this into the tree of nodes used to populate UI.

Some UI also uses this to delete origin data, which again calls into the storage context.

CannedBrowsingDataXYZHelper

Subclass of the above. These are created to sparsely populate a CookiesTreeModel on demand by LocalSharedObjectContainer, with only some details (e.g. full details for cookies, but only the usage of other storage typess).

  • TabSpecificContentSettings is notified on storage access/blocked.
  • It calls into the “canned” helper instance for the storage type.
  • The “canned” instance records necessary “pending” info about the access.
  • On demand, the “pending” info is used to populate a CookiesTreeModel.

This “pending” info only needs to record the origin for most storage types.