| Index: chrome/browser/browsing_data/cookies_tree_model.h
|
| diff --git a/chrome/browser/browsing_data/cookies_tree_model.h b/chrome/browser/browsing_data/cookies_tree_model.h
|
| index 2d819019a8d19d0ceb3e1f34078c4dd06396de65..96205bb965b8029a2a7bf5daf0924bf23cdb3291 100644
|
| --- a/chrome/browser/browsing_data/cookies_tree_model.h
|
| +++ b/chrome/browser/browsing_data/cookies_tree_model.h
|
| @@ -53,6 +53,8 @@ class CookieTreeIndexedDBNode;
|
| class CookieTreeIndexedDBsNode;
|
| class CookieTreeLocalStorageNode;
|
| class CookieTreeLocalStoragesNode;
|
| +class CookieTreeMediaLicenseNode;
|
| +class CookieTreeMediaLicensesNode;
|
| class CookieTreeQuotaNode;
|
| class CookieTreeServiceWorkerNode;
|
| class CookieTreeServiceWorkersNode;
|
| @@ -109,6 +111,8 @@ class CookieTreeNode : public ui::TreeNode<CookieTreeNode> {
|
| TYPE_CACHE_STORAGES, // This is used for CookieTreeCacheStoragesNode.
|
| TYPE_CACHE_STORAGE, // This is used for CookieTreeCacheStorageNode.
|
| TYPE_FLASH_LSO, // This is used for CookieTreeFlashLSONode.
|
| + TYPE_MEDIA_LICENSES, // This is used for CookieTreeMediaLicensesNode.
|
| + TYPE_MEDIA_LICENSE, // This is used for CookieTreeMediaLicenseNode.
|
| };
|
|
|
| DetailedInfo();
|
| @@ -141,6 +145,9 @@ class CookieTreeNode : public ui::TreeNode<CookieTreeNode> {
|
| DetailedInfo& InitCacheStorage(
|
| const content::CacheStorageUsageInfo* cache_storage_info);
|
| DetailedInfo& InitFlashLSO(const std::string& flash_lso_domain);
|
| + DetailedInfo& InitMediaLicense(
|
| + const BrowsingDataMediaLicenseHelper::MediaLicenseInfo*
|
| + media_license_info);
|
|
|
| NodeType node_type;
|
| GURL origin;
|
| @@ -159,6 +166,8 @@ class CookieTreeNode : public ui::TreeNode<CookieTreeNode> {
|
| const content::ServiceWorkerUsageInfo* service_worker_info = nullptr;
|
| const content::CacheStorageUsageInfo* cache_storage_info = nullptr;
|
| std::string flash_lso_domain;
|
| + const BrowsingDataMediaLicenseHelper::MediaLicenseInfo* media_license_info =
|
| + nullptr;
|
| };
|
|
|
| CookieTreeNode() {}
|
| @@ -229,6 +238,7 @@ class CookieTreeHostNode : public CookieTreeNode {
|
| CookieTreeQuotaNode* UpdateOrCreateQuotaNode(
|
| std::list<BrowsingDataQuotaHelper::QuotaInfo>::iterator quota_info);
|
| CookieTreeFlashLSONode* GetOrCreateFlashLSONode(const std::string& domain);
|
| + CookieTreeMediaLicensesNode* GetOrCreateMediaLicensesNode();
|
|
|
| std::string canonicalized_host() const { return canonicalized_host_; }
|
|
|
| @@ -260,6 +270,7 @@ class CookieTreeHostNode : public CookieTreeNode {
|
| CookieTreeServiceWorkersNode* service_workers_child_ = nullptr;
|
| CookieTreeCacheStoragesNode* cache_storages_child_ = nullptr;
|
| CookieTreeFlashLSONode* flash_lso_child_ = nullptr;
|
| + CookieTreeMediaLicensesNode* media_licenses_child_ = nullptr;
|
|
|
| // The URL for which this node was initially created.
|
| GURL url_;
|
| @@ -684,6 +695,45 @@ class CookieTreeFlashLSONode : public CookieTreeNode {
|
| DISALLOW_COPY_AND_ASSIGN(CookieTreeFlashLSONode);
|
| };
|
|
|
| +// CookieTreeMediaLicenseNode -----------------------------------------------
|
| +class CookieTreeMediaLicenseNode : public CookieTreeNode {
|
| + public:
|
| + friend class CookieTreeMediaLicensesNode;
|
| +
|
| + // |media_license_info| is expected to remain valid as long as the
|
| + // CookieTreeMediaLicenseNode is valid.
|
| + explicit CookieTreeMediaLicenseNode(
|
| + const std::list<BrowsingDataMediaLicenseHelper::MediaLicenseInfo>::
|
| + iterator media_license_info);
|
| + ~CookieTreeMediaLicenseNode() override;
|
| +
|
| + void DeleteStoredObjects() override;
|
| + DetailedInfo GetDetailedInfo() const override;
|
| +
|
| + private:
|
| + // |media_license_info_| is expected to remain valid as long as the
|
| + // CookieTreeMediaLicenseNode is valid.
|
| + std::list<BrowsingDataMediaLicenseHelper::MediaLicenseInfo>::iterator
|
| + media_license_info_;
|
| +
|
| + DISALLOW_COPY_AND_ASSIGN(CookieTreeMediaLicenseNode);
|
| +};
|
| +
|
| +class CookieTreeMediaLicensesNode : public CookieTreeNode {
|
| + public:
|
| + CookieTreeMediaLicensesNode();
|
| + ~CookieTreeMediaLicensesNode() override;
|
| +
|
| + DetailedInfo GetDetailedInfo() const override;
|
| +
|
| + void AddMediaLicenseNode(std::unique_ptr<CookieTreeMediaLicenseNode> child) {
|
| + AddChildSortedByTitle(std::move(child));
|
| + }
|
| +
|
| + private:
|
| + DISALLOW_COPY_AND_ASSIGN(CookieTreeMediaLicensesNode);
|
| +};
|
| +
|
| // CookiesTreeModel -----------------------------------------------------------
|
| class CookiesTreeModel : public ui::TreeNodeModel<CookieTreeNode> {
|
| public:
|
| @@ -773,6 +823,7 @@ class CookiesTreeModel : public ui::TreeNodeModel<CookieTreeNode> {
|
| void PopulateServiceWorkerUsageInfo(LocalDataContainer* container);
|
| void PopulateCacheStorageUsageInfo(LocalDataContainer* container);
|
| void PopulateFlashLSOInfo(LocalDataContainer* container);
|
| + void PopulateMediaLicenseInfo(LocalDataContainer* container);
|
|
|
| BrowsingDataCookieHelper* GetCookieHelper(const std::string& app_id);
|
| LocalDataContainer* data_container() {
|
| @@ -849,6 +900,9 @@ class CookiesTreeModel : public ui::TreeNodeModel<CookieTreeNode> {
|
| void PopulateFlashLSOInfoWithFilter(LocalDataContainer* container,
|
| ScopedBatchUpdateNotifier* notifier,
|
| const base::string16& filter);
|
| + void PopulateMediaLicenseInfoWithFilter(LocalDataContainer* container,
|
| + ScopedBatchUpdateNotifier* notifier,
|
| + const base::string16& filter);
|
|
|
| #if defined(ENABLE_EXTENSIONS)
|
| // The extension special storage policy; see ExtensionsProtectingNode() above.
|
|
|