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

Unified Diff: chrome/browser/profiles/profile_io_data.cc

Issue 11669012: Convert ProtocolHandlerRegistry::Interceptor to a net::URLRequestJobFactory. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Address jhawkins' comments Created 7 years, 11 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: chrome/browser/profiles/profile_io_data.cc
diff --git a/chrome/browser/profiles/profile_io_data.cc b/chrome/browser/profiles/profile_io_data.cc
index 7d6f2a0fa55281ecb459a4eb5ccdba83955ef172..959394bd14c622818beccebc633b17f779f77ea1 100644
--- a/chrome/browser/profiles/profile_io_data.cc
+++ b/chrome/browser/profiles/profile_io_data.cc
@@ -172,10 +172,10 @@ void ProfileIOData::InitializeOnUIThread(Profile* profile) {
DCHECK(protocol_handler_registry);
// The profile instance is only available here in the InitializeOnUIThread
- // method, so we create the url interceptor here, then save it for
+ // method, so we create the url job factory here, then save it for
// later delivery to the job factory in LazyInitialize.
- params->protocol_handler_interceptor.reset(
- protocol_handler_registry->CreateURLInterceptor());
+ params->protocol_handler_interceptor =
+ protocol_handler_registry->CreateJobInterceptorFactory();
ChromeProxyConfigService* proxy_config_service =
ProxyServiceFactory::CreateProxyConfigService(true);
@@ -394,7 +394,7 @@ ChromeURLRequestContext*
ProfileIOData::GetIsolatedAppRequestContext(
ChromeURLRequestContext* main_context,
const StoragePartitionDescriptor& partition_descriptor,
- scoped_ptr<net::URLRequestJobFactory::Interceptor>
+ scoped_ptr<ProtocolHandlerRegistry::JobInterceptorFactory>
protocol_handler_interceptor) const {
LazyInitialize();
ChromeURLRequestContext* context = NULL;
@@ -604,9 +604,9 @@ void ProfileIOData::ApplyProfileParamsToContext(
context->set_ssl_config_service(profile_params_->ssl_config_service);
}
-void ProfileIOData::SetUpJobFactoryDefaults(
- net::URLRequestJobFactoryImpl* job_factory,
- scoped_ptr<net::URLRequestJobFactory::Interceptor>
+scoped_ptr<net::URLRequestJobFactory> ProfileIOData::SetUpJobFactoryDefaults(
+ scoped_ptr<net::URLRequestJobFactoryImpl> job_factory,
+ scoped_ptr<ProtocolHandlerRegistry::JobInterceptorFactory>
protocol_handler_interceptor,
net::NetworkDelegate* network_delegate,
net::FtpTransactionFactory* ftp_transaction_factory,
@@ -622,11 +622,6 @@ void ProfileIOData::SetUpJobFactoryDefaults(
CreateDevToolsProtocolHandler(chrome_url_data_manager_backend(),
network_delegate));
DCHECK(set_protocol);
-
- if (protocol_handler_interceptor.get()) {
- job_factory->AddInterceptor(protocol_handler_interceptor.release());
- }
-
set_protocol = job_factory->SetProtocolHandler(
extensions::kExtensionScheme,
CreateExtensionProtocolHandler(is_incognito(), GetExtensionInfoMap()));
@@ -661,6 +656,14 @@ void ProfileIOData::SetUpJobFactoryDefaults(
new net::FtpProtocolHandler(ftp_transaction_factory,
ftp_auth_cache));
#endif // !defined(DISABLE_FTP_SUPPORT)
+
+ if (protocol_handler_interceptor) {
+ protocol_handler_interceptor->Chain(
+ job_factory.PassAs<net::URLRequestJobFactory>());
+ return protocol_handler_interceptor.PassAs<net::URLRequestJobFactory>();
+ } else {
+ return job_factory.PassAs<net::URLRequestJobFactory>();
+ }
}
void ProfileIOData::ShutdownOnUIThread() {
« no previous file with comments | « chrome/browser/profiles/profile_io_data.h ('k') | chrome/browser/ui/sync/one_click_signin_helper_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698