Commit 5e5f22d6 authored by Joshua Bell's avatar Joshua Bell Committed by Commit Bot

Browsing Data: Add README.md to explain what "canned" data is

I can never remember what role the CannedBrowsingDataXYZHelper classes
serve when someone asks, so documenting it for posterity.

TBR=dullweber@chromium.org,mxcai@chromium.org
NOTRY=true

Change-Id: Id5853e0baccc2dd1b3649a6398cb3e86e1c1f5a1
Reviewed-on: https://chromium-review.googlesource.com/c/1431234
Commit-Queue: Joshua Bell <jsbell@chromium.org>
Reviewed-by: default avatarJoshua Bell <jsbell@chromium.org>
Cr-Commit-Position: refs/heads/master@{#625344}
parent 06f705e5
# CookiesTreeModel
A CookiesTreeModel is instantiated in multiple places in Chrome:
* "All cookies and site data" (chrome://settings/siteData)
* "All sites" (chrome://settings/content/all)
* "Cookies in use" display off the origin chip in the infobar
## 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.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment