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

Side by Side Diff: components/offline_pages/core/client_policy_controller.cc

Issue 2835193005: Offline Pages - Policy cleanup (Closed)
Patch Set: Fix typo 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 unified diff | Download patch
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "components/offline_pages/core/client_policy_controller.h" 5 #include "components/offline_pages/core/client_policy_controller.h"
6 6
7 #include <utility> 7 #include <utility>
8 8
9 #include "base/memory/ptr_util.h" 9 #include "base/memory/ptr_util.h"
10 #include "base/time/time.h" 10 #include "base/time/time.h"
(...skipping 20 matching lines...) Expand all
31 .Build())); 31 .Build()));
32 policies_.insert(std::make_pair( 32 policies_.insert(std::make_pair(
33 kAsyncNamespace, 33 kAsyncNamespace,
34 OfflinePageClientPolicyBuilder(kAsyncNamespace, LifetimeType::PERSISTENT, 34 OfflinePageClientPolicyBuilder(kAsyncNamespace, LifetimeType::PERSISTENT,
35 kUnlimitedPages, kUnlimitedPages) 35 kUnlimitedPages, kUnlimitedPages)
36 .SetIsSupportedByDownload(true) 36 .SetIsSupportedByDownload(true)
37 .SetIsRemovedOnCacheReset(false) 37 .SetIsRemovedOnCacheReset(false)
38 .Build())); 38 .Build()));
39 policies_.insert(std::make_pair( 39 policies_.insert(std::make_pair(
40 kCCTNamespace, 40 kCCTNamespace,
41 MakePolicy(kCCTNamespace, LifetimeType::TEMPORARY, 41 OfflinePageClientPolicyBuilder(kCCTNamespace, LifetimeType::TEMPORARY,
42 base::TimeDelta::FromDays(2), kUnlimitedPages, 1))); 42 kUnlimitedPages, 1)
43 .SetExpirePeriod(base::TimeDelta::FromDays(2))
44 .SetIsDisabledWhenPrefetchDisabled(true)
45 .Build()));
43 policies_.insert(std::make_pair( 46 policies_.insert(std::make_pair(
44 kDownloadNamespace, OfflinePageClientPolicyBuilder( 47 kDownloadNamespace, OfflinePageClientPolicyBuilder(
45 kDownloadNamespace, LifetimeType::PERSISTENT, 48 kDownloadNamespace, LifetimeType::PERSISTENT,
46 kUnlimitedPages, kUnlimitedPages) 49 kUnlimitedPages, kUnlimitedPages)
47 .SetIsRemovedOnCacheReset(false) 50 .SetIsRemovedOnCacheReset(false)
48 .SetIsSupportedByDownload(true) 51 .SetIsSupportedByDownload(true)
49 .Build())); 52 .Build()));
50 policies_.insert(std::make_pair( 53 policies_.insert(std::make_pair(
51 kNTPSuggestionsNamespace, 54 kNTPSuggestionsNamespace,
52 OfflinePageClientPolicyBuilder(kNTPSuggestionsNamespace, 55 OfflinePageClientPolicyBuilder(kNTPSuggestionsNamespace,
53 LifetimeType::PERSISTENT, kUnlimitedPages, 56 LifetimeType::PERSISTENT, kUnlimitedPages,
54 kUnlimitedPages) 57 kUnlimitedPages)
55 .SetIsSupportedByDownload(true) 58 .SetIsSupportedByDownload(true)
59 .SetIsRemovedOnCacheReset(false)
56 .Build())); 60 .Build()));
57 policies_.insert(std::make_pair( 61 policies_.insert(std::make_pair(
58 kSuggestedArticlesNamespace, 62 kSuggestedArticlesNamespace,
59 OfflinePageClientPolicyBuilder(kSuggestedArticlesNamespace, 63 OfflinePageClientPolicyBuilder(kSuggestedArticlesNamespace,
60 LifetimeType::TEMPORARY, kUnlimitedPages, 64 LifetimeType::TEMPORARY, kUnlimitedPages,
61 kUnlimitedPages) 65 kUnlimitedPages)
62 .SetIsRemovedOnCacheReset(true) 66 .SetIsRemovedOnCacheReset(true)
67 .SetIsDisabledWhenPrefetchDisabled(true)
63 .SetExpirePeriod(base::TimeDelta::FromDays(30)) 68 .SetExpirePeriod(base::TimeDelta::FromDays(30))
64 .Build())); 69 .Build()));
65 70
66 // Fallback policy. 71 // Fallback policy.
67 policies_.insert(std::make_pair( 72 policies_.insert(std::make_pair(
68 kDefaultNamespace, MakePolicy(kDefaultNamespace, LifetimeType::TEMPORARY, 73 kDefaultNamespace, MakePolicy(kDefaultNamespace, LifetimeType::TEMPORARY,
69 base::TimeDelta::FromDays(1), 10, 1))); 74 base::TimeDelta::FromDays(1), 10, 1)));
70 } 75 }
71 76
72 ClientPolicyController::~ClientPolicyController() {} 77 ClientPolicyController::~ClientPolicyController() {}
(...skipping 82 matching lines...) Expand 10 before | Expand all | Expand 10 after
155 160
156 show_in_original_tab_cache_ = base::MakeUnique<std::vector<std::string>>(); 161 show_in_original_tab_cache_ = base::MakeUnique<std::vector<std::string>>();
157 for (const auto& policy_item : policies_) { 162 for (const auto& policy_item : policies_) {
158 if (policy_item.second.feature_policy.only_shown_in_original_tab) 163 if (policy_item.second.feature_policy.only_shown_in_original_tab)
159 show_in_original_tab_cache_->emplace_back(policy_item.first); 164 show_in_original_tab_cache_->emplace_back(policy_item.first);
160 } 165 }
161 166
162 return *show_in_original_tab_cache_; 167 return *show_in_original_tab_cache_;
163 } 168 }
164 169
170 bool ClientPolicyController::IsDisabledWhenPrefetchDisabled(
171 const std::string& name_space) const {
172 return GetPolicy(name_space).feature_policy.disabled_when_prefetch_disabled;
173 }
174
175 const std::vector<std::string>&
176 ClientPolicyController::GetNamespacesDisabledWhenPrefetchDisabled() const {
177 if (disabled_when_prefetch_disabled_cache_)
178 return *disabled_when_prefetch_disabled_cache_;
179
180 disabled_when_prefetch_disabled_cache_ =
181 base::MakeUnique<std::vector<std::string>>();
182 for (const auto& policy_item : policies_) {
183 if (policy_item.second.feature_policy.disabled_when_prefetch_disabled)
184 disabled_when_prefetch_disabled_cache_->emplace_back(policy_item.first);
185 }
186
187 return *disabled_when_prefetch_disabled_cache_;
188 }
189
165 void ClientPolicyController::AddPolicyForTest( 190 void ClientPolicyController::AddPolicyForTest(
166 const std::string& name_space, 191 const std::string& name_space,
167 const OfflinePageClientPolicyBuilder& builder) { 192 const OfflinePageClientPolicyBuilder& builder) {
168 policies_.insert(std::make_pair(name_space, builder.Build())); 193 policies_.insert(std::make_pair(name_space, builder.Build()));
169 } 194 }
170 195
171 } // namespace offline_pages 196 } // namespace offline_pages
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698