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

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

Issue 734263003: Move data reduction proxy logic out of chrome and android webview network delegate (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Test fix Created 6 years 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
« no previous file with comments | « android_webview/browser/net/aw_network_delegate.cc ('k') | chrome/browser/io_thread.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 ce39602ab0c1c3c309326865b6da38a1687e0178..f00ef59a53c6d9d23a5bbf459ba467629eb4a1c8 100644
--- a/android_webview/browser/net/aw_url_request_context_getter.cc
+++ b/android_webview/browser/net/aw_url_request_context_getter.cc
@@ -20,6 +20,7 @@
#include "components/data_reduction_proxy/core/browser/data_reduction_proxy_auth_request_handler.h"
#include "components/data_reduction_proxy/core/browser/data_reduction_proxy_config_service.h"
#include "components/data_reduction_proxy/core/browser/data_reduction_proxy_interceptor.h"
+#include "components/data_reduction_proxy/core/browser/data_reduction_proxy_network_delegate.h"
#include "components/data_reduction_proxy/core/browser/data_reduction_proxy_settings.h"
#include "content/public/browser/browser_thread.h"
#include "content/public/browser/content_browser_client.h"
@@ -195,8 +196,33 @@ void AwURLRequestContextGetter::InitializeURLRequestContext() {
net::URLRequestContextBuilder builder;
builder.set_user_agent(GetUserAgent());
- AwNetworkDelegate* aw_network_delegate = new AwNetworkDelegate();
- builder.set_network_delegate(aw_network_delegate);
+ scoped_ptr<AwNetworkDelegate> aw_network_delegate(new AwNetworkDelegate());
+
+ AwBrowserContext* browser_context = AwBrowserContext::GetDefault();
+ DCHECK(browser_context);
+
+ // Compression statistics are not gathered for WebView, so
+ // DataReductionProxyStatisticsPrefs is not instantiated and passed to the
+ // network delegate.
+ DataReductionProxySettings* data_reduction_proxy_settings =
+ browser_context->GetDataReductionProxySettings();
+ DCHECK(data_reduction_proxy_settings);
+ data_reduction_proxy_auth_request_handler_.reset(
+ new data_reduction_proxy::DataReductionProxyAuthRequestHandler(
+ data_reduction_proxy::Client::WEBVIEW_ANDROID,
+ data_reduction_proxy_settings->params(),
+ BrowserThread::GetMessageLoopProxyForThread(BrowserThread::IO)));
+
+ data_reduction_proxy::DataReductionProxyNetworkDelegate*
+ data_reduction_proxy_network_delegate =
+ new data_reduction_proxy::DataReductionProxyNetworkDelegate(
+ aw_network_delegate.Pass(),
+ data_reduction_proxy_settings->params(),
+ data_reduction_proxy_auth_request_handler_.get(),
+ data_reduction_proxy::DataReductionProxyNetworkDelegate::
+ ProxyConfigGetter());
+
+ builder.set_network_delegate(data_reduction_proxy_network_delegate);
#if !defined(DISABLE_FTP_SUPPORT)
builder.set_ftp_enabled(false); // Android WebView does not support ftp yet.
#endif
@@ -230,25 +256,6 @@ void AwURLRequestContextGetter::InitializeURLRequestContext() {
20 * 1024 * 1024, // 20M
BrowserThread::GetMessageLoopProxyForThread(BrowserThread::CACHE)));
- AwBrowserContext* browser_context = AwBrowserContext::GetDefault();
- DCHECK(browser_context);
- DataReductionProxySettings* data_reduction_proxy_settings =
- browser_context->GetDataReductionProxySettings();
- DCHECK(data_reduction_proxy_settings);
- data_reduction_proxy_auth_request_handler_.reset(
- new data_reduction_proxy::DataReductionProxyAuthRequestHandler(
- data_reduction_proxy::Client::WEBVIEW_ANDROID,
- data_reduction_proxy_settings->params(),
- BrowserThread::GetMessageLoopProxyForThread(BrowserThread::IO)));
-
- // Compression statistics are not gathered for WebView, so
- // DataReductionProxyStatisticsPrefs is not instantiated and passed to the
- // network delegate.
- aw_network_delegate->set_data_reduction_proxy_params(
- data_reduction_proxy_settings->params());
- aw_network_delegate->set_data_reduction_proxy_auth_request_handler(
- data_reduction_proxy_auth_request_handler_.get());
-
main_http_factory_.reset(main_cache);
url_request_context_->set_http_transaction_factory(main_cache);
url_request_context_->set_cookie_store(cookie_store_.get());
« no previous file with comments | « android_webview/browser/net/aw_network_delegate.cc ('k') | chrome/browser/io_thread.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698