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

Unified Diff: components/offline_pages/core/client_policy_controller.cc

Issue 2835193005: Offline Pages - Policy cleanup (Closed)
Patch Set: add background loader offliner. Created 3 years, 8 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 side-by-side diff with in-line comments
Download patch
Index: components/offline_pages/core/client_policy_controller.cc
diff --git a/components/offline_pages/core/client_policy_controller.cc b/components/offline_pages/core/client_policy_controller.cc
index b3381999e0f3b765a6343d245a9b99297757a6ee..3000b74664d91c9c86e289d2d3550b531899ce22 100644
--- a/components/offline_pages/core/client_policy_controller.cc
+++ b/components/offline_pages/core/client_policy_controller.cc
@@ -38,8 +38,11 @@ ClientPolicyController::ClientPolicyController() {
.Build()));
policies_.insert(std::make_pair(
kCCTNamespace,
- MakePolicy(kCCTNamespace, LifetimeType::TEMPORARY,
- base::TimeDelta::FromDays(2), kUnlimitedPages, 1)));
+ OfflinePageClientPolicyBuilder(kCCTNamespace, LifetimeType::TEMPORARY,
+ kUnlimitedPages, 1)
+ .SetExpirePeriod(base::TimeDelta::FromDays(2))
+ .SetIsDisabledWhenPrefetchDisabled(true)
+ .Build()));
policies_.insert(std::make_pair(
kDownloadNamespace, OfflinePageClientPolicyBuilder(
kDownloadNamespace, LifetimeType::PERSISTENT,
@@ -53,6 +56,7 @@ ClientPolicyController::ClientPolicyController() {
LifetimeType::PERSISTENT, kUnlimitedPages,
kUnlimitedPages)
.SetIsSupportedByDownload(true)
+ .SetIsRemovedOnCacheReset(false)
.Build()));
policies_.insert(std::make_pair(
kSuggestedArticlesNamespace,
@@ -60,6 +64,7 @@ ClientPolicyController::ClientPolicyController() {
LifetimeType::TEMPORARY, kUnlimitedPages,
kUnlimitedPages)
.SetIsRemovedOnCacheReset(true)
+ .SetIsDisabledWhenPrefetchDisabled(true)
.SetExpirePeriod(base::TimeDelta::FromDays(30))
.Build()));
@@ -162,6 +167,26 @@ ClientPolicyController::GetNamespacesRestrictedToOriginalTab() const {
return *show_in_original_tab_cache_;
}
+bool ClientPolicyController::IsDisabledWhenPrefetchDisabled(
+ const std::string& name_space) const {
+ return GetPolicy(name_space).feature_policy.disabled_when_prefetch_disabled;
+}
+
+const std::vector<std::string>&
+ClientPolicyController::GetNamespacesDisabledWhenPrefetchDisabled() const {
+ if (disabled_when_prefetch_disabled_cache_)
+ return *disabled_when_prefetch_disabled_cache_;
+
+ disabled_when_prefetch_disabled_cache_ =
+ base::MakeUnique<std::vector<std::string>>();
+ for (const auto& policy_item : policies_) {
+ if (policy_item.second.feature_policy.disabled_when_prefetch_disabled)
+ disabled_when_prefetch_disabled_cache_->emplace_back(policy_item.first);
+ }
+
+ return *disabled_when_prefetch_disabled_cache_;
+}
+
void ClientPolicyController::AddPolicyForTest(
const std::string& name_space,
const OfflinePageClientPolicyBuilder& builder) {

Powered by Google App Engine
This is Rietveld 408576698