 Chromium Code Reviews
 Chromium Code Reviews Issue 1448193002:
  [Android WebView] Get rid of secondary HttpNetworkSession  (Closed) 
  Base URL: https://chromium.googlesource.com/chromium/src.git@master
    
  
    Issue 1448193002:
  [Android WebView] Get rid of secondary HttpNetworkSession  (Closed) 
  Base URL: https://chromium.googlesource.com/chromium/src.git@master| 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())); |