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

Unified Diff: components/offline_pages/client_policy_controller.cc

Issue 2289143005: [Offline pages] Add a builder and feature struct to policy (Closed)
Patch Set: Created 4 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 side-by-side diff with in-line comments
Download patch
Index: components/offline_pages/client_policy_controller.cc
diff --git a/components/offline_pages/client_policy_controller.cc b/components/offline_pages/client_policy_controller.cc
index 6546946cef5f98ef4f4c48ee32360e2f231a6010..6ca2566498c7885f0a02f67fbdc3dd409b4bb76f 100644
--- a/components/offline_pages/client_policy_controller.cc
+++ b/components/offline_pages/client_policy_controller.cc
@@ -25,26 +25,33 @@ ClientPolicyController::ClientPolicyController() {
base::TimeDelta::FromDays(2), kUnlimitedPages,
kUnlimitedPages)));
policies_.insert(std::make_pair(
- kAsyncNamespace, MakePolicy(kAsyncNamespace, LifetimeType::PERSISTENT,
- base::TimeDelta::FromDays(2), kUnlimitedPages,
- kUnlimitedPages)));
+ kAsyncNamespace,
+ OfflinePageClientPolicyBuilder(
+ kAsyncNamespace, LifetimeType::PERSISTENT,
+ kUnlimitedPages, kUnlimitedPages)
+ .SetUserRequested(true)
+ .SetIsDownloaded(true)
+ .Build()));
policies_.insert(std::make_pair(
kCCTNamespace,
MakePolicy(kCCTNamespace, LifetimeType::TEMPORARY,
base::TimeDelta::FromDays(2), kUnlimitedPages, 1)));
-
policies_.insert(std::make_pair(
- kDownloadNamespace, MakePolicy(kDownloadNamespace,
+ kDownloadNamespace,
+ OfflinePageClientPolicyBuilder(
+ kDownloadNamespace,
+ LifetimeType::PERSISTENT,
+ kUnlimitedPages,
+ kUnlimitedPages)
+ .SetUserRequested(true)
fgorski 2016/08/31 21:31:00 I see a relative inconsistency between SetUserRequ
chili 2016/09/06 20:55:20 Done.
+ .SetIsDownloaded(true)
+ .Build()));
+ policies_.insert(std::make_pair(
+ kNTPSuggestionsNamespace,
+ OfflinePageClientPolicyBuilder(kNTPSuggestionsNamespace,
LifetimeType::PERSISTENT,
- base::TimeDelta::FromDays(0),
kUnlimitedPages,
- kUnlimitedPages)));
- policies_.insert(std::make_pair(
- kNTPSuggestionsNamespace, MakePolicy(kNTPSuggestionsNamespace,
- LifetimeType::PERSISTENT,
- base::TimeDelta::FromDays(0),
- kUnlimitedPages,
- kUnlimitedPages)));
+ kUnlimitedPages).Build()));
// Fallback policy.
policies_.insert(std::make_pair(
@@ -61,10 +68,10 @@ const OfflinePageClientPolicy ClientPolicyController::MakePolicy(
const base::TimeDelta& expire_period,
size_t page_limit,
size_t pages_allowed_per_url) {
- OfflinePageClientPolicy policy({name_space,
- {lifetime_type, expire_period, page_limit},
- pages_allowed_per_url});
- return policy;
+ return OfflinePageClientPolicyBuilder(
+ name_space, lifetime_type, page_limit, pages_allowed_per_url)
+ .SetExpirePeriod(expire_period)
+ .Build();
}
const OfflinePageClientPolicy& ClientPolicyController::GetPolicy(
@@ -76,4 +83,15 @@ const OfflinePageClientPolicy& ClientPolicyController::GetPolicy(
return policies_.at(kDefaultNamespace);
}
+bool ClientPolicyController::IsUserRequested(
+ const std::string& name_space) const {
+ return GetPolicy(name_space).feature_policy.is_user_requested;
+}
+
+bool ClientPolicyController::IsDownloaded(
+ const std::string& name_space) const {
+ return GetPolicy(name_space).feature_policy.is_enabled_for_downloads;
+}
+
+
} // namespace offline_pages

Powered by Google App Engine
This is Rietveld 408576698