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

Unified Diff: android_webview/browser/net/aw_url_request_context_getter.cc

Issue 1448193002: [Android WebView] Get rid of secondary HttpNetworkSession (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 1 month 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: android_webview/browser/net/aw_url_request_context_getter.cc
diff --git a/android_webview/browser/net/aw_url_request_context_getter.cc b/android_webview/browser/net/aw_url_request_context_getter.cc
index 4de5a3317aba6a0953a9c827aba21c61b60811e4..5f3d1f57b62f52cce2475337030219dc5cba23f3 100644
--- a/android_webview/browser/net/aw_url_request_context_getter.cc
+++ b/android_webview/browser/net/aw_url_request_context_getter.cc
@@ -88,26 +88,6 @@ void ApplyCmdlineOverridesToNetworkSessionParams(
}
}
-void PopulateNetworkSessionParams(
- net::URLRequestContext* context,
- net::HttpNetworkSession::Params* params) {
- params->host_resolver = context->host_resolver();
- params->cert_verifier = context->cert_verifier();
- params->channel_id_service = context->channel_id_service();
- params->transport_security_state = context->transport_security_state();
- params->proxy_service = context->proxy_service();
- params->ssl_config_service = context->ssl_config_service();
- params->http_auth_handler_factory = context->http_auth_handler_factory();
- params->network_delegate = context->network_delegate();
- params->http_server_properties = context->http_server_properties();
- params->net_log = context->net_log();
- // TODO(sgurun) remove once crbug.com/329681 is fixed.
- params->next_protos = net::NextProtosSpdy31();
- params->use_alternative_services = true;
-
- ApplyCmdlineOverridesToNetworkSessionParams(params);
-}
-
scoped_ptr<net::URLRequestJobFactory> CreateJobFactory(
content::ProtocolHandlerMap* protocol_handlers,
content::URLRequestInterceptorScopedVector request_interceptors) {
@@ -220,32 +200,24 @@ void AwURLRequestContextGetter::InitializeURLRequestContext() {
proxy_config_service_.Pass(), net_log_.get()));
builder.set_net_log(net_log_.get());
builder.SetCookieAndChannelIdStores(cookie_store_, NULL);
- ApplyCmdlineOverridesToURLRequestContextBuilder(&builder);
- url_request_context_ = builder.Build().Pass();
- // TODO(mnaganov): Fix URLRequestContextBuilder to use proper threads.
- net::HttpNetworkSession::Params network_session_params;
+ net::URLRequestContextBuilder::HttpCacheParams cache_params;
+ cache_params.type =
+ net::URLRequestContextBuilder::HttpCacheParams::DISK_SIMPLE;
+ cache_params.max_size = 20 * 1024 * 1024; // 20M
+ cache_params.path = cache_path_;
+ builder.EnableHttpCache(cache_params);
+ builder.SetFileTaskRunner(
+ BrowserThread::GetMessageLoopProxyForThread(BrowserThread::CACHE));
- PopulateNetworkSessionParams(url_request_context_.get(),
- &network_session_params);
-
- http_network_session_.reset(
- new net::HttpNetworkSession(network_session_params));
- main_http_factory_.reset(new net::HttpCache(
- http_network_session_.get(),
- make_scoped_ptr(new net::HttpCache::DefaultBackend(
- net::DISK_CACHE,
- net::CACHE_BACKEND_SIMPLE,
- cache_path_,
- 20 * 1024 * 1024, // 20M
- BrowserThread::GetMessageLoopProxyForThread(BrowserThread::CACHE))),
- true /* set_up_quic_server_info */));
-
- url_request_context_->set_http_transaction_factory(main_http_factory_.get());
+ net::HttpNetworkSession::Params network_session_params;
+ ApplyCmdlineOverridesToNetworkSessionParams(&network_session_params);
mmenke 2015/11/17 17:22:45 Bug: This isn't doing anything. You can set thes
mnaganov (inactive) 2015/11/17 19:01:38 *facepalm* Right, I knew I must call it, but someh
+ builder.SetSpdyAndQuicEnabled(true, true);
sgurun-gerrit only 2015/11/17 08:19:12 This makes me realize that... Quic is probably alr
sgurun-gerrit only 2015/11/17 18:06:31 also as mmenke pointed out this enables http2, whi
mnaganov (inactive) 2015/11/17 19:01:39 I confused use_alternative_services with Quic. The
+ ApplyCmdlineOverridesToURLRequestContextBuilder(&builder);
+ url_request_context_ = builder.Build().Pass();
job_factory_ = CreateJobFactory(&protocol_handlers_,
request_interceptors_.Pass());
-
job_factory_.reset(new net::URLRequestInterceptingJobFactory(
job_factory_.Pass(),
browser_context->GetDataReductionProxyIOData()->CreateInterceptor()));

Powered by Google App Engine
This is Rietveld 408576698