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

Side by Side Diff: chrome/browser/net/chrome_network_delegate.cc

Issue 2239753002: Added a ForceYouTubeRestrict policy and deprecated the old ForceYouTubeSafetyMode policy (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
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 unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 "chrome/browser/net/chrome_network_delegate.h" 5 #include "chrome/browser/net/chrome_network_delegate.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 #include <stdlib.h> 8 #include <stdlib.h>
9 9
10 #include <vector> 10 #include <vector>
(...skipping 14 matching lines...) Expand all
25 #include "base/strings/string_number_conversions.h" 25 #include "base/strings/string_number_conversions.h"
26 #include "base/strings/string_util.h" 26 #include "base/strings/string_util.h"
27 #include "base/time/time.h" 27 #include "base/time/time.h"
28 #include "build/build_config.h" 28 #include "build/build_config.h"
29 #include "chrome/browser/browser_process.h" 29 #include "chrome/browser/browser_process.h"
30 #include "chrome/browser/content_settings/cookie_settings_factory.h" 30 #include "chrome/browser/content_settings/cookie_settings_factory.h"
31 #include "chrome/browser/content_settings/tab_specific_content_settings.h" 31 #include "chrome/browser/content_settings/tab_specific_content_settings.h"
32 #include "chrome/browser/custom_handlers/protocol_handler_registry.h" 32 #include "chrome/browser/custom_handlers/protocol_handler_registry.h"
33 #include "chrome/browser/net/chrome_extensions_network_delegate.h" 33 #include "chrome/browser/net/chrome_extensions_network_delegate.h"
34 #include "chrome/browser/net/request_source_bandwidth_histograms.h" 34 #include "chrome/browser/net/request_source_bandwidth_histograms.h"
35 #include "chrome/browser/net/safe_search_util.h"
36 #include "chrome/browser/profiles/profile_manager.h" 35 #include "chrome/browser/profiles/profile_manager.h"
37 #include "chrome/browser/task_manager/task_manager_interface.h" 36 #include "chrome/browser/task_manager/task_manager_interface.h"
38 #include "chrome/common/chrome_constants.h" 37 #include "chrome/common/chrome_constants.h"
39 #include "chrome/common/features.h" 38 #include "chrome/common/features.h"
40 #include "chrome/common/pref_names.h" 39 #include "chrome/common/pref_names.h"
41 #include "components/content_settings/core/browser/cookie_settings.h" 40 #include "components/content_settings/core/browser/cookie_settings.h"
42 #include "components/data_usage/core/data_use_aggregator.h" 41 #include "components/data_usage/core/data_use_aggregator.h"
43 #include "components/domain_reliability/monitor.h" 42 #include "components/domain_reliability/monitor.h"
44 #include "components/policy/core/browser/url_blacklist_manager.h" 43 #include "components/policy/core/browser/url_blacklist_manager.h"
45 #include "components/prefs/pref_member.h" 44 #include "components/prefs/pref_member.h"
(...skipping 96 matching lines...) Expand 10 before | Expand all | Expand 10 after
142 } // namespace 141 } // namespace
143 142
144 ChromeNetworkDelegate::ChromeNetworkDelegate( 143 ChromeNetworkDelegate::ChromeNetworkDelegate(
145 extensions::EventRouterForwarder* event_router, 144 extensions::EventRouterForwarder* event_router,
146 BooleanPrefMember* enable_referrers, 145 BooleanPrefMember* enable_referrers,
147 const metrics::UpdateUsagePrefCallbackType& metrics_data_use_forwarder) 146 const metrics::UpdateUsagePrefCallbackType& metrics_data_use_forwarder)
148 : profile_(NULL), 147 : profile_(NULL),
149 enable_referrers_(enable_referrers), 148 enable_referrers_(enable_referrers),
150 enable_do_not_track_(NULL), 149 enable_do_not_track_(NULL),
151 force_google_safe_search_(NULL), 150 force_google_safe_search_(NULL),
152 force_youtube_safety_mode_(NULL), 151 force_youtube_restrict_(NULL),
Thiemo Nagel 2016/08/12 12:12:20 Could you maybe replace NULL by nullptr while you'
ljusten (tachyonic) 2016/08/16 09:24:53 Done.
153 allowed_domains_for_apps_(nullptr), 152 allowed_domains_for_apps_(nullptr),
154 url_blacklist_manager_(NULL), 153 url_blacklist_manager_(NULL),
155 domain_reliability_monitor_(NULL), 154 domain_reliability_monitor_(NULL),
156 data_use_measurement_(metrics_data_use_forwarder), 155 data_use_measurement_(metrics_data_use_forwarder),
157 experimental_web_platform_features_enabled_( 156 experimental_web_platform_features_enabled_(
158 base::CommandLine::ForCurrentProcess()->HasSwitch( 157 base::CommandLine::ForCurrentProcess()->HasSwitch(
159 switches::kEnableExperimentalWebPlatformFeatures)), 158 switches::kEnableExperimentalWebPlatformFeatures)),
160 data_use_aggregator_(nullptr), 159 data_use_aggregator_(nullptr),
161 is_data_usage_off_the_record_(true) { 160 is_data_usage_off_the_record_(true) {
162 DCHECK(enable_referrers); 161 DCHECK(enable_referrers);
(...skipping 23 matching lines...) Expand all
186 bool is_data_usage_off_the_record) { 185 bool is_data_usage_off_the_record) {
187 data_use_aggregator_ = data_use_aggregator; 186 data_use_aggregator_ = data_use_aggregator;
188 is_data_usage_off_the_record_ = is_data_usage_off_the_record; 187 is_data_usage_off_the_record_ = is_data_usage_off_the_record;
189 } 188 }
190 189
191 // static 190 // static
192 void ChromeNetworkDelegate::InitializePrefsOnUIThread( 191 void ChromeNetworkDelegate::InitializePrefsOnUIThread(
193 BooleanPrefMember* enable_referrers, 192 BooleanPrefMember* enable_referrers,
194 BooleanPrefMember* enable_do_not_track, 193 BooleanPrefMember* enable_do_not_track,
195 BooleanPrefMember* force_google_safe_search, 194 BooleanPrefMember* force_google_safe_search,
196 BooleanPrefMember* force_youtube_safety_mode, 195 IntegerPrefMember* force_youtube_restrict,
197 StringPrefMember* allowed_domains_for_apps, 196 StringPrefMember* allowed_domains_for_apps,
198 PrefService* pref_service) { 197 PrefService* pref_service) {
199 DCHECK_CURRENTLY_ON(BrowserThread::UI); 198 DCHECK_CURRENTLY_ON(BrowserThread::UI);
200 enable_referrers->Init(prefs::kEnableReferrers, pref_service); 199 enable_referrers->Init(prefs::kEnableReferrers, pref_service);
201 enable_referrers->MoveToThread( 200 enable_referrers->MoveToThread(
202 BrowserThread::GetTaskRunnerForThread(BrowserThread::IO)); 201 BrowserThread::GetTaskRunnerForThread(BrowserThread::IO));
203 if (enable_do_not_track) { 202 if (enable_do_not_track) {
204 enable_do_not_track->Init(prefs::kEnableDoNotTrack, pref_service); 203 enable_do_not_track->Init(prefs::kEnableDoNotTrack, pref_service);
205 enable_do_not_track->MoveToThread( 204 enable_do_not_track->MoveToThread(
206 BrowserThread::GetTaskRunnerForThread(BrowserThread::IO)); 205 BrowserThread::GetTaskRunnerForThread(BrowserThread::IO));
207 } 206 }
208 if (force_google_safe_search) { 207 if (force_google_safe_search) {
209 force_google_safe_search->Init(prefs::kForceGoogleSafeSearch, pref_service); 208 force_google_safe_search->Init(prefs::kForceGoogleSafeSearch, pref_service);
210 force_google_safe_search->MoveToThread( 209 force_google_safe_search->MoveToThread(
211 BrowserThread::GetTaskRunnerForThread(BrowserThread::IO)); 210 BrowserThread::GetTaskRunnerForThread(BrowserThread::IO));
212 } 211 }
213 if (force_youtube_safety_mode) { 212 if (force_youtube_restrict) {
214 force_youtube_safety_mode->Init(prefs::kForceYouTubeSafetyMode, 213 force_youtube_restrict->Init(prefs::kForceYouTubeRestrict, pref_service);
215 pref_service); 214 force_youtube_restrict->MoveToThread(
216 force_youtube_safety_mode->MoveToThread(
217 BrowserThread::GetTaskRunnerForThread(BrowserThread::IO)); 215 BrowserThread::GetTaskRunnerForThread(BrowserThread::IO));
218 } 216 }
219 if (allowed_domains_for_apps) { 217 if (allowed_domains_for_apps) {
220 allowed_domains_for_apps->Init(prefs::kAllowedDomainsForApps, pref_service); 218 allowed_domains_for_apps->Init(prefs::kAllowedDomainsForApps, pref_service);
221 allowed_domains_for_apps->MoveToThread( 219 allowed_domains_for_apps->MoveToThread(
222 BrowserThread::GetTaskRunnerForThread(BrowserThread::IO)); 220 BrowserThread::GetTaskRunnerForThread(BrowserThread::IO));
223 } 221 }
224 } 222 }
225 223
226 // static 224 // static
(...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after
307 true); 305 true);
308 } 306 }
309 307
310 return rv; 308 return rv;
311 } 309 }
312 310
313 int ChromeNetworkDelegate::OnBeforeStartTransaction( 311 int ChromeNetworkDelegate::OnBeforeStartTransaction(
314 net::URLRequest* request, 312 net::URLRequest* request,
315 const net::CompletionCallback& callback, 313 const net::CompletionCallback& callback,
316 net::HttpRequestHeaders* headers) { 314 net::HttpRequestHeaders* headers) {
317 if (force_youtube_safety_mode_ && force_youtube_safety_mode_->GetValue()) 315 if (force_youtube_restrict_ &&
318 safe_search_util::ForceYouTubeSafetyMode(request, headers); 316 force_youtube_restrict_->GetValue() != safe_search_util::YTRM_OFF)
317 safe_search_util::ForceYouTubeRestrict(
318 request, headers, (safe_search_util::YouTubeRestrictMode)
Thiemo Nagel 2016/08/12 12:12:20 Please use static_cast instead of c-style cast. A
ljusten (tachyonic) 2016/08/16 09:24:54 Done.
319 force_youtube_restrict_->GetValue());
319 320
320 return extensions_delegate_->OnBeforeStartTransaction(request, callback, 321 return extensions_delegate_->OnBeforeStartTransaction(request, callback,
321 headers); 322 headers);
322 } 323 }
323 324
324 void ChromeNetworkDelegate::OnStartTransaction( 325 void ChromeNetworkDelegate::OnStartTransaction(
325 net::URLRequest* request, 326 net::URLRequest* request,
326 const net::HttpRequestHeaders& headers) { 327 const net::HttpRequestHeaders& headers) {
327 extensions_delegate_->OnStartTransaction(request, headers); 328 extensions_delegate_->OnStartTransaction(request, headers);
328 } 329 }
(...skipping 258 matching lines...) Expand 10 before | Expand all | Expand 10 after
587 if (!data_use_aggregator_) 588 if (!data_use_aggregator_)
588 return; 589 return;
589 590
590 if (is_data_usage_off_the_record_) { 591 if (is_data_usage_off_the_record_) {
591 data_use_aggregator_->ReportOffTheRecordDataUse(tx_bytes, rx_bytes); 592 data_use_aggregator_->ReportOffTheRecordDataUse(tx_bytes, rx_bytes);
592 return; 593 return;
593 } 594 }
594 595
595 data_use_aggregator_->ReportDataUse(request, tx_bytes, rx_bytes); 596 data_use_aggregator_->ReportDataUse(request, tx_bytes, rx_bytes);
596 } 597 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698