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

Unified Diff: chrome/browser/net/chrome_network_delegate.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: Created 6 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: chrome/browser/net/chrome_network_delegate.cc
diff --git a/chrome/browser/net/chrome_network_delegate.cc b/chrome/browser/net/chrome_network_delegate.cc
index cd7381f78d66bca32a55c43b6dc4a1d5245debbe..65c0eeaad18d8e28f0323eb6b2f370451da17efc 100644
--- a/chrome/browser/net/chrome_network_delegate.cc
+++ b/chrome/browser/net/chrome_network_delegate.cc
@@ -33,11 +33,6 @@
#include "chrome/browser/profiles/profile_manager.h"
#include "chrome/browser/task_manager/task_manager.h"
#include "chrome/common/pref_names.h"
-#include "components/data_reduction_proxy/core/browser/data_reduction_proxy_auth_request_handler.h"
-#include "components/data_reduction_proxy/core/browser/data_reduction_proxy_metrics.h"
-#include "components/data_reduction_proxy/core/browser/data_reduction_proxy_statistics_prefs.h"
-#include "components/data_reduction_proxy/core/browser/data_reduction_proxy_usage_stats.h"
-#include "components/data_reduction_proxy/core/common/data_reduction_proxy_params.h"
#include "components/domain_reliability/monitor.h"
#include "content/public/browser/browser_thread.h"
#include "content/public/browser/render_frame_host.h"
@@ -50,10 +45,6 @@
#include "net/cookies/cookie_options.h"
#include "net/http/http_request_headers.h"
#include "net/http/http_response_headers.h"
-#include "net/proxy/proxy_config.h"
-#include "net/proxy/proxy_info.h"
-#include "net/proxy/proxy_retry_info.h"
-#include "net/proxy/proxy_server.h"
#include "net/url_request/url_request.h"
#include "net/url_request/url_request_context.h"
@@ -114,47 +105,6 @@ void ForceGoogleSafeSearchCallbackWrapper(
callback.Run(rv);
}
-void UpdateContentLengthPrefs(
- int received_content_length,
- int original_content_length,
- data_reduction_proxy::DataReductionProxyRequestType request_type,
- Profile* profile,
- data_reduction_proxy::DataReductionProxyStatisticsPrefs* statistics_prefs) {
- DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
- DCHECK_GE(received_content_length, 0);
- DCHECK_GE(original_content_length, 0);
-
- // Can be NULL in a unit test.
- if (!g_browser_process)
- return;
-
- // Ignore off-the-record data.
- if (!g_browser_process->profile_manager()->IsValidProfile(profile) ||
- profile->IsOffTheRecord()) {
- return;
- }
- data_reduction_proxy::UpdateContentLengthPrefs(
- received_content_length,
- original_content_length,
- profile->GetPrefs(),
- request_type, statistics_prefs);
-}
-
-void StoreAccumulatedContentLength(
- int received_content_length,
- int original_content_length,
- data_reduction_proxy::DataReductionProxyRequestType request_type,
- Profile* profile,
- data_reduction_proxy::DataReductionProxyStatisticsPrefs* statistics_prefs) {
- BrowserThread::PostTask(BrowserThread::UI, FROM_HERE,
- base::Bind(&UpdateContentLengthPrefs,
- received_content_length,
- original_content_length,
- request_type,
- profile,
- statistics_prefs));
-}
-
void RecordContentLengthHistograms(
bengr 2014/11/18 19:30:55 This should be moved to the DRPNetworkDelegate.
megjablon 2014/11/19 19:23:40 Done.
int64 received_content_length,
int64 original_content_length,
@@ -251,19 +201,12 @@ ChromeNetworkDelegate::ChromeNetworkDelegate(
enable_referrers_(enable_referrers),
enable_do_not_track_(NULL),
force_google_safe_search_(NULL),
- data_reduction_proxy_enabled_(NULL),
#if defined(ENABLE_CONFIGURATION_POLICY)
url_blacklist_manager_(NULL),
#endif
domain_reliability_monitor_(NULL),
- received_content_length_(0),
- original_content_length_(0),
first_request_(true),
- prerender_tracker_(NULL),
- data_reduction_proxy_params_(NULL),
- data_reduction_proxy_usage_stats_(NULL),
- data_reduction_proxy_auth_request_handler_(NULL),
- data_reduction_proxy_statistics_prefs_(NULL) {
+ prerender_tracker_(NULL) {
DCHECK(enable_referrers);
extensions_delegate_.reset(
ChromeExtensionsNetworkDelegate::Create(event_router));
@@ -331,36 +274,6 @@ void ChromeNetworkDelegate::AllowAccessToAllFiles() {
g_allow_file_access_ = true;
}
-// static
-// TODO(megjablon): Use data_reduction_proxy_delayed_pref_service to read prefs.
-// Until updated the pref values may be up to an hour behind on desktop.
-base::Value* ChromeNetworkDelegate::HistoricNetworkStatsInfoToValue(
- PrefService* prefs) {
- DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
- int64 total_received = prefs->GetInt64(
- data_reduction_proxy::prefs::kHttpReceivedContentLength);
- int64 total_original = prefs->GetInt64(
- data_reduction_proxy::prefs::kHttpOriginalContentLength);
-
- base::DictionaryValue* dict = new base::DictionaryValue();
- // Use strings to avoid overflow. base::Value only supports 32-bit integers.
- dict->SetString("historic_received_content_length",
- base::Int64ToString(total_received));
- dict->SetString("historic_original_content_length",
- base::Int64ToString(total_original));
- return dict;
-}
-
-base::Value* ChromeNetworkDelegate::SessionNetworkStatsInfoToValue() const {
- base::DictionaryValue* dict = new base::DictionaryValue();
- // Use strings to avoid overflow. base::Value only supports 32-bit integers.
- dict->SetString("session_received_content_length",
- base::Int64ToString(received_content_length_));
- dict->SetString("session_original_content_length",
- base::Int64ToString(original_content_length_));
- return dict;
-}
-
int ChromeNetworkDelegate::OnBeforeURLRequest(
net::URLRequest* request,
const net::CompletionCallback& callback,
@@ -417,29 +330,6 @@ int ChromeNetworkDelegate::OnBeforeURLRequest(
return rv;
}
-void ChromeNetworkDelegate::OnResolveProxy(
- const GURL& url,
- int load_flags,
- const net::ProxyService& proxy_service,
- net::ProxyInfo* result) {
- if (!on_resolve_proxy_handler_.is_null() &&
- !proxy_config_getter_.is_null()) {
- on_resolve_proxy_handler_.Run(url, load_flags,
- proxy_config_getter_.Run(),
- proxy_service.config(),
- proxy_service.proxy_retry_info(),
- data_reduction_proxy_params_, result);
- }
-}
-
-void ChromeNetworkDelegate::OnProxyFallback(const net::ProxyServer& bad_proxy,
- int net_error) {
- if (data_reduction_proxy_usage_stats_) {
- data_reduction_proxy_usage_stats_->OnProxyFallback(
- bad_proxy, net_error);
- }
-}
-
int ChromeNetworkDelegate::OnBeforeSendHeaders(
net::URLRequest* request,
const net::CompletionCallback& callback,
@@ -453,16 +343,6 @@ int ChromeNetworkDelegate::OnBeforeSendHeaders(
return extensions_delegate_->OnBeforeSendHeaders(request, callback, headers);
}
-void ChromeNetworkDelegate::OnBeforeSendProxyHeaders(
- net::URLRequest* request,
- const net::ProxyInfo& proxy_info,
- net::HttpRequestHeaders* headers) {
- if (data_reduction_proxy_auth_request_handler_) {
- data_reduction_proxy_auth_request_handler_->MaybeAddRequestHeader(
- request, proxy_info.proxy_server(), headers);
- }
-}
-
void ChromeNetworkDelegate::OnSendHeaders(
net::URLRequest* request,
const net::HttpRequestHeaders& headers) {
@@ -510,9 +390,6 @@ void ChromeNetworkDelegate::OnRawBytesRead(const net::URLRequest& request,
void ChromeNetworkDelegate::OnCompleted(net::URLRequest* request,
bool started) {
- if (data_reduction_proxy_usage_stats_)
- data_reduction_proxy_usage_stats_->OnUrlRequestCompleted(request, started);
-
TRACE_EVENT_ASYNC_END0("net", "URLRequest", request);
if (request->status().status() == net::URLRequestStatus::SUCCESS) {
// For better accuracy, we use the actual bytes read instead of the length
@@ -542,31 +419,15 @@ void ChromeNetworkDelegate::OnCompleted(net::URLRequest* request,
int64 original_content_length =
request->response_info().headers->GetInt64HeaderValue(
"x-original-content-length");
bengr 2014/11/18 19:30:55 This should be moved to the DRPNetworkDelegate.
megjablon 2014/11/19 19:23:40 Done.
- data_reduction_proxy::DataReductionProxyRequestType request_type =
- data_reduction_proxy::GetDataReductionProxyRequestType(request);
base::TimeDelta freshness_lifetime =
bengr 2014/11/18 19:30:55 This should be moved to the DRPNetworkDelegate.
megjablon 2014/11/19 19:23:40 Done.
request->response_info().headers->GetFreshnessLifetimes(
request->response_info().response_time).freshness;
- int64 adjusted_original_content_length =
- data_reduction_proxy::GetAdjustedOriginalContentLength(
- request_type, original_content_length,
- received_content_length);
- AccumulateContentLength(received_content_length,
- adjusted_original_content_length,
- request_type);
+
RecordContentLengthHistograms(received_content_length,
bengr 2014/11/18 19:30:55 This should be moved to the DRPNetworkDelegate.
megjablon 2014/11/19 19:23:40 Done.
original_content_length,
freshness_lifetime);
- if (data_reduction_proxy_enabled_ &&
- data_reduction_proxy_usage_stats_ &&
- !proxy_config_getter_.is_null()) {
- data_reduction_proxy_usage_stats_->RecordBytesHistograms(
- request,
- *data_reduction_proxy_enabled_,
- proxy_config_getter_.Run());
- }
DVLOG(2) << __FUNCTION__
bengr 2014/11/18 19:30:55 This should be moved to the DRPNetworkDelegate.
megjablon 2014/11/19 19:23:40 Done.
<< " received content length: " << received_content_length
<< " original content length: " << original_content_length
@@ -784,20 +645,3 @@ bool ChromeNetworkDelegate::OnCancelURLRequestWithPolicyViolatingReferrerHeader(
referrer_url, callstack));
return true;
}
-
-void ChromeNetworkDelegate::AccumulateContentLength(
- int64 received_content_length,
- int64 original_content_length,
- data_reduction_proxy::DataReductionProxyRequestType request_type) {
- DCHECK_GE(received_content_length, 0);
- DCHECK_GE(original_content_length, 0);
- if (data_reduction_proxy_statistics_prefs_) {
- StoreAccumulatedContentLength(received_content_length,
- original_content_length,
- request_type,
- reinterpret_cast<Profile*>(profile_),
- data_reduction_proxy_statistics_prefs_);
- }
- received_content_length_ += received_content_length;
- original_content_length_ += original_content_length;
-}

Powered by Google App Engine
This is Rietveld 408576698