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 9b51826dd5e52a775a8fd33d8ad8a298a1d60722..91409e5cb9b10fe48afaaa2e9ce4e6807479b1ad 100644 |
--- a/android_webview/browser/net/aw_url_request_context_getter.cc |
+++ b/android_webview/browser/net/aw_url_request_context_getter.cc |
@@ -14,6 +14,7 @@ |
#include "content/public/browser/resource_context.h" |
#include "content/public/common/content_client.h" |
#include "content/public/common/url_constants.h" |
+#include "net/http/http_cache.h" |
#include "net/proxy/proxy_service.h" |
#include "net/url_request/data_protocol_handler.h" |
#include "net/url_request/file_protocol_handler.h" |
@@ -92,13 +93,6 @@ void AwURLRequestContextGetter::Init() { |
builder.set_accept_charset( |
net::HttpUtil::GenerateAcceptCharsetHeader("ISO-8859-1")); |
- net::URLRequestContextBuilder::HttpCacheParams cache_params; |
- cache_params.type = net::URLRequestContextBuilder::HttpCacheParams::DISK; |
- cache_params.max_size = 10 * 1024 * 1024; // 10M |
- cache_params.path = |
- browser_context_->GetPath().Append(FILE_PATH_LITERAL("Cache")), |
boliu
2012/12/06 15:36:39
Unrelated: comma at the end of line...how did this
mnaganov (inactive)
2012/12/06 16:44:56
That's http://en.wikipedia.org/wiki/Comma_operator
boliu
2012/12/06 17:44:02
Mind blown...
|
- builder.EnableHttpCache(cache_params); |
- |
url_request_context_.reset(builder.Build()); |
job_factory_.reset(new AwURLRequestJobFactory); |
@@ -111,10 +105,38 @@ void AwURLRequestContextGetter::Init() { |
job_factory_->AddInterceptor(new AwRequestInterceptor()); |
url_request_context_->set_job_factory(job_factory_.get()); |
+ net::HttpCache::DefaultBackend* main_backend = |
boliu
2012/12/06 15:36:39
Can we add a TODO or NOTE saying builder doesn't s
mnaganov (inactive)
2012/12/06 16:44:56
Done.
|
+ new net::HttpCache::DefaultBackend( |
+ net::DISK_CACHE, |
+ browser_context_->GetPath().Append(FILE_PATH_LITERAL("Cache")), |
+ 10 * 1024 * 1024, // 10M |
+ BrowserThread::GetMessageLoopProxyForThread(BrowserThread::CACHE)); |
+ net::HttpNetworkSession::Params network_session_params; |
+ PopulateNetworkSessionParams(&network_session_params); |
+ net::HttpCache* main_cache = new net::HttpCache( |
+ network_session_params, main_backend); |
+ main_http_factory_.reset(main_cache); |
boliu
2012/12/06 15:36:39
nit: combine this line and above so we never decla
mnaganov (inactive)
2012/12/06 16:44:56
Done.
|
+ url_request_context_->set_http_transaction_factory(main_cache); |
+ |
OnNetworkStackInitialized(url_request_context_.get(), |
job_factory_.get()); |
} |
+void AwURLRequestContextGetter::PopulateNetworkSessionParams( |
+ net::HttpNetworkSession::Params* params) { |
+ net::URLRequestContext* context = url_request_context_.get(); |
+ params->host_resolver = context->host_resolver(); |
+ params->cert_verifier = context->cert_verifier(); |
+ params->server_bound_cert_service = context->server_bound_cert_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(); |
+} |
+ |
content::ResourceContext* AwURLRequestContextGetter::GetResourceContext() { |
DCHECK(url_request_context_); |
if (!resource_context_) |