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

Side by Side Diff: chrome/browser/profiles/profile_io_data.cc

Issue 2002433002: Handle online and offline redirects via interceptor and offline scheme (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase Created 4 years, 5 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/profiles/profile_io_data.h" 5 #include "chrome/browser/profiles/profile_io_data.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 8
9 #include <string> 9 #include <string>
10 #include <utility> 10 #include <utility>
(...skipping 108 matching lines...) Expand 10 before | Expand all | Expand 10 after
119 #include "extensions/common/constants.h" 119 #include "extensions/common/constants.h"
120 #endif 120 #endif
121 121
122 #if defined(ENABLE_SUPERVISED_USERS) 122 #if defined(ENABLE_SUPERVISED_USERS)
123 #include "chrome/browser/supervised_user/supervised_user_service.h" 123 #include "chrome/browser/supervised_user/supervised_user_service.h"
124 #include "chrome/browser/supervised_user/supervised_user_service_factory.h" 124 #include "chrome/browser/supervised_user/supervised_user_service_factory.h"
125 #include "chrome/browser/supervised_user/supervised_user_url_filter.h" 125 #include "chrome/browser/supervised_user/supervised_user_url_filter.h"
126 #endif 126 #endif
127 127
128 #if defined(OS_ANDROID) 128 #if defined(OS_ANDROID)
129 #include "chrome/browser/android/offline_pages/offline_page_protocol_handler.h"
130 #include "chrome/browser/android/offline_pages/offline_page_request_handler.h"
129 #include "content/public/browser/android/content_protocol_handler.h" 131 #include "content/public/browser/android/content_protocol_handler.h"
130 #endif // defined(OS_ANDROID) 132 #endif // defined(OS_ANDROID)
131 133
132 #if defined(OS_CHROMEOS) 134 #if defined(OS_CHROMEOS)
133 #include "chrome/browser/chromeos/certificate_provider/certificate_provider.h" 135 #include "chrome/browser/chromeos/certificate_provider/certificate_provider.h"
134 #include "chrome/browser/chromeos/certificate_provider/certificate_provider_serv ice.h" 136 #include "chrome/browser/chromeos/certificate_provider/certificate_provider_serv ice.h"
135 #include "chrome/browser/chromeos/certificate_provider/certificate_provider_serv ice_factory.h" 137 #include "chrome/browser/chromeos/certificate_provider/certificate_provider_serv ice_factory.h"
136 #include "chrome/browser/chromeos/fileapi/external_file_protocol_handler.h" 138 #include "chrome/browser/chromeos/fileapi/external_file_protocol_handler.h"
137 #include "chrome/browser/chromeos/login/startup_utils.h" 139 #include "chrome/browser/chromeos/login/startup_utils.h"
138 #include "chrome/browser/chromeos/net/cert_verify_proc_chromeos.h" 140 #include "chrome/browser/chromeos/net/cert_verify_proc_chromeos.h"
(...skipping 1015 matching lines...) Expand 10 before | Expand all | Expand 10 after
1154 io_thread_globals->cert_verifier.get()); 1156 io_thread_globals->cert_verifier.get());
1155 #endif 1157 #endif
1156 } 1158 }
1157 1159
1158 // Install the New Tab Page Interceptor. 1160 // Install the New Tab Page Interceptor.
1159 if (profile_params_->new_tab_page_interceptor.get()) { 1161 if (profile_params_->new_tab_page_interceptor.get()) {
1160 request_interceptors.push_back( 1162 request_interceptors.push_back(
1161 profile_params_->new_tab_page_interceptor.release()); 1163 profile_params_->new_tab_page_interceptor.release());
1162 } 1164 }
1163 1165
1166 // Install the Offline Page Interceptor.
1167 #if defined(OS_ANDROID)
1168 std::unique_ptr<net::URLRequestInterceptor> offline_page_interceptor =
1169 offline_pages::OfflinePageRequestHandler::CreateInterceptor(
1170 profile_params_->profile);
1171 if (offline_page_interceptor.get())
1172 request_interceptors.push_back(offline_page_interceptor.release());
1173 #endif
1174
1164 std::unique_ptr<net::MultiLogCTVerifier> ct_verifier( 1175 std::unique_ptr<net::MultiLogCTVerifier> ct_verifier(
1165 new net::MultiLogCTVerifier()); 1176 new net::MultiLogCTVerifier());
1166 ct_verifier->AddLogs(io_thread_globals->ct_logs); 1177 ct_verifier->AddLogs(io_thread_globals->ct_logs);
1167 main_request_context_->set_cert_transparency_verifier(ct_verifier.get()); 1178 main_request_context_->set_cert_transparency_verifier(ct_verifier.get());
1168 1179
1169 ct_tree_tracker_.reset(new certificate_transparency::TreeStateTracker( 1180 ct_tree_tracker_.reset(new certificate_transparency::TreeStateTracker(
1170 io_thread_globals->ct_logs)); 1181 io_thread_globals->ct_logs));
1171 ct_verifier->SetObserver(ct_tree_tracker_.get()); 1182 ct_verifier->SetObserver(ct_tree_tracker_.get());
1172 1183
1173 cert_transparency_verifier_ = std::move(ct_verifier); 1184 cert_transparency_verifier_ = std::move(ct_verifier);
(...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after
1234 DCHECK(set_protocol); 1245 DCHECK(set_protocol);
1235 } 1246 }
1236 #endif // defined(OS_CHROMEOS) 1247 #endif // defined(OS_CHROMEOS)
1237 #if defined(OS_ANDROID) 1248 #if defined(OS_ANDROID)
1238 set_protocol = job_factory->SetProtocolHandler( 1249 set_protocol = job_factory->SetProtocolHandler(
1239 url::kContentScheme, 1250 url::kContentScheme,
1240 content::ContentProtocolHandler::Create( 1251 content::ContentProtocolHandler::Create(
1241 content::BrowserThread::GetBlockingPool() 1252 content::BrowserThread::GetBlockingPool()
1242 ->GetTaskRunnerWithShutdownBehavior( 1253 ->GetTaskRunnerWithShutdownBehavior(
1243 base::SequencedWorkerPool::SKIP_ON_SHUTDOWN))); 1254 base::SequencedWorkerPool::SKIP_ON_SHUTDOWN)));
1255 set_protocol = job_factory->SetProtocolHandler(
1256 chrome::kOfflinePageScheme,
1257 base::WrapUnique(new offline_pages::OfflinePageProtocolHandler(
1258 profile_params_->profile)));
1244 #endif 1259 #endif
1245 1260
1246 job_factory->SetProtocolHandler( 1261 job_factory->SetProtocolHandler(
1247 url::kAboutScheme, 1262 url::kAboutScheme,
1248 base::WrapUnique(new about_handler::AboutProtocolHandler())); 1263 base::WrapUnique(new about_handler::AboutProtocolHandler()));
1249 #if !defined(DISABLE_FTP_SUPPORT) 1264 #if !defined(DISABLE_FTP_SUPPORT)
1250 DCHECK(ftp_transaction_factory); 1265 DCHECK(ftp_transaction_factory);
1251 job_factory->SetProtocolHandler( 1266 job_factory->SetProtocolHandler(
1252 url::kFtpScheme, 1267 url::kFtpScheme,
1253 base::WrapUnique(new net::FtpProtocolHandler(ftp_transaction_factory))); 1268 base::WrapUnique(new net::FtpProtocolHandler(ftp_transaction_factory)));
(...skipping 121 matching lines...) Expand 10 before | Expand all | Expand 10 after
1375 void ProfileIOData::SetCookieSettingsForTesting( 1390 void ProfileIOData::SetCookieSettingsForTesting(
1376 content_settings::CookieSettings* cookie_settings) { 1391 content_settings::CookieSettings* cookie_settings) {
1377 DCHECK(!cookie_settings_.get()); 1392 DCHECK(!cookie_settings_.get());
1378 cookie_settings_ = cookie_settings; 1393 cookie_settings_ = cookie_settings;
1379 } 1394 }
1380 1395
1381 policy::URLBlacklist::URLBlacklistState ProfileIOData::GetURLBlacklistState( 1396 policy::URLBlacklist::URLBlacklistState ProfileIOData::GetURLBlacklistState(
1382 const GURL& url) const { 1397 const GURL& url) const {
1383 return url_blacklist_manager_->GetURLBlacklistState(url); 1398 return url_blacklist_manager_->GetURLBlacklistState(url);
1384 } 1399 }
OLDNEW
« no previous file with comments | « chrome/browser/android/tab_android.cc ('k') | chrome/browser/renderer_host/chrome_resource_dispatcher_host_delegate.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698