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

Side by Side Diff: android_webview/browser/net/aw_url_request_context_getter.cc

Issue 1342613002: Revert of Remove reference counting from HttpNetworkSession. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 3 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
« no previous file with comments | « android_webview/browser/net/aw_url_request_context_getter.h ('k') | chrome/browser/io_thread.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 "android_webview/browser/net/aw_url_request_context_getter.h" 5 #include "android_webview/browser/net/aw_url_request_context_getter.h"
6 6
7 #include <vector> 7 #include <vector>
8 8
9 #include "android_webview/browser/aw_browser_context.h" 9 #include "android_webview/browser/aw_browser_context.h"
10 #include "android_webview/browser/aw_content_browser_client.h" 10 #include "android_webview/browser/aw_content_browser_client.h"
(...skipping 164 matching lines...) Expand 10 before | Expand all | Expand 10 after
175 175
176 return job_factory.Pass(); 176 return job_factory.Pass();
177 } 177 }
178 178
179 } // namespace 179 } // namespace
180 180
181 AwURLRequestContextGetter::AwURLRequestContextGetter( 181 AwURLRequestContextGetter::AwURLRequestContextGetter(
182 const base::FilePath& cache_path, net::CookieStore* cookie_store, 182 const base::FilePath& cache_path, net::CookieStore* cookie_store,
183 scoped_ptr<net::ProxyConfigService> config_service) 183 scoped_ptr<net::ProxyConfigService> config_service)
184 : cache_path_(cache_path), 184 : cache_path_(cache_path),
185 net_log_(new net::NetLog()),
186 proxy_config_service_(config_service.Pass()),
187 cookie_store_(cookie_store), 185 cookie_store_(cookie_store),
188 http_user_agent_settings_(new AwHttpUserAgentSettings()) { 186 net_log_(new net::NetLog()) {
187 proxy_config_service_ = config_service.Pass();
188 http_user_agent_settings_.reset(
189 new AwHttpUserAgentSettings());
189 // CreateSystemProxyConfigService for Android must be called on main thread. 190 // CreateSystemProxyConfigService for Android must be called on main thread.
190 DCHECK_CURRENTLY_ON(BrowserThread::UI); 191 DCHECK_CURRENTLY_ON(BrowserThread::UI);
191 } 192 }
192 193
193 AwURLRequestContextGetter::~AwURLRequestContextGetter() { 194 AwURLRequestContextGetter::~AwURLRequestContextGetter() {
194 } 195 }
195 196
196 void AwURLRequestContextGetter::InitializeURLRequestContext() { 197 void AwURLRequestContextGetter::InitializeURLRequestContext() {
197 DCHECK_CURRENTLY_ON(BrowserThread::IO); 198 DCHECK_CURRENTLY_ON(BrowserThread::IO);
198 DCHECK(!url_request_context_); 199 DCHECK(!url_request_context_);
(...skipping 24 matching lines...) Expand all
223 builder.SetCookieAndChannelIdStores(cookie_store_, NULL); 224 builder.SetCookieAndChannelIdStores(cookie_store_, NULL);
224 ApplyCmdlineOverridesToURLRequestContextBuilder(&builder); 225 ApplyCmdlineOverridesToURLRequestContextBuilder(&builder);
225 226
226 url_request_context_ = builder.Build().Pass(); 227 url_request_context_ = builder.Build().Pass();
227 // TODO(mnaganov): Fix URLRequestContextBuilder to use proper threads. 228 // TODO(mnaganov): Fix URLRequestContextBuilder to use proper threads.
228 net::HttpNetworkSession::Params network_session_params; 229 net::HttpNetworkSession::Params network_session_params;
229 230
230 PopulateNetworkSessionParams(url_request_context_.get(), 231 PopulateNetworkSessionParams(url_request_context_.get(),
231 &network_session_params); 232 &network_session_params);
232 233
233 http_network_session_.reset( 234 net::HttpCache* main_cache = new net::HttpCache(
234 new net::HttpNetworkSession(network_session_params)); 235 network_session_params,
235 main_http_factory_.reset(new net::HttpCache(
236 http_network_session_.get(),
237 new net::HttpCache::DefaultBackend( 236 new net::HttpCache::DefaultBackend(
238 net::DISK_CACHE, 237 net::DISK_CACHE,
239 net::CACHE_BACKEND_SIMPLE, 238 net::CACHE_BACKEND_SIMPLE,
240 cache_path_, 239 cache_path_,
241 20 * 1024 * 1024, // 20M 240 20 * 1024 * 1024, // 20M
242 BrowserThread::GetMessageLoopProxyForThread(BrowserThread::CACHE)), 241 BrowserThread::GetMessageLoopProxyForThread(BrowserThread::CACHE)));
243 true /* set_up_quic_server_info */));
244 242
245 url_request_context_->set_http_transaction_factory(main_http_factory_.get()); 243 main_http_factory_.reset(main_cache);
244 url_request_context_->set_http_transaction_factory(main_cache);
246 245
247 job_factory_ = CreateJobFactory(&protocol_handlers_, 246 job_factory_ = CreateJobFactory(&protocol_handlers_,
248 request_interceptors_.Pass()); 247 request_interceptors_.Pass());
249 248
250 job_factory_.reset(new net::URLRequestInterceptingJobFactory( 249 job_factory_.reset(new net::URLRequestInterceptingJobFactory(
251 job_factory_.Pass(), 250 job_factory_.Pass(),
252 browser_context->GetDataReductionProxyIOData()->CreateInterceptor())); 251 browser_context->GetDataReductionProxyIOData()->CreateInterceptor()));
253 url_request_context_->set_job_factory(job_factory_.get()); 252 url_request_context_->set_job_factory(job_factory_.get());
254 url_request_context_->set_http_user_agent_settings( 253 url_request_context_->set_http_user_agent_settings(
255 http_user_agent_settings_.get()); 254 http_user_agent_settings_.get());
(...skipping 23 matching lines...) Expand all
279 return net_log_.get(); 278 return net_log_.get();
280 } 279 }
281 280
282 void AwURLRequestContextGetter::SetKeyOnIO(const std::string& key) { 281 void AwURLRequestContextGetter::SetKeyOnIO(const std::string& key) {
283 DCHECK(AwBrowserContext::GetDefault()->GetDataReductionProxyIOData()); 282 DCHECK(AwBrowserContext::GetDefault()->GetDataReductionProxyIOData());
284 AwBrowserContext::GetDefault()->GetDataReductionProxyIOData()-> 283 AwBrowserContext::GetDefault()->GetDataReductionProxyIOData()->
285 request_options()->SetKeyOnIO(key); 284 request_options()->SetKeyOnIO(key);
286 } 285 }
287 286
288 } // namespace android_webview 287 } // namespace android_webview
OLDNEW
« no previous file with comments | « android_webview/browser/net/aw_url_request_context_getter.h ('k') | chrome/browser/io_thread.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698