Chromium Code Reviews| Index: components/data_reduction_proxy/core/browser/data_reduction_proxy_config.cc |
| diff --git a/components/data_reduction_proxy/core/browser/data_reduction_proxy_config.cc b/components/data_reduction_proxy/core/browser/data_reduction_proxy_config.cc |
| index 4661367b041e1caa3b7075815377f12e2fb77511..e7e530ac5ec6e7a48d44f231db802495f59f9d52 100644 |
| --- a/components/data_reduction_proxy/core/browser/data_reduction_proxy_config.cc |
| +++ b/components/data_reduction_proxy/core/browser/data_reduction_proxy_config.cc |
| @@ -247,7 +247,8 @@ DataReductionProxyConfig::DataReductionProxyConfig( |
| lofi_off_(false), |
| last_query_(base::TimeTicks::Now()), |
| network_quality_at_last_query_(NETWORK_QUALITY_AT_LAST_QUERY_UNKNOWN), |
| - previous_state_lofi_on_(false) { |
| + previous_state_lofi_on_(false), |
| + weak_factory_(this) { |
| DCHECK(configurator); |
| DCHECK(event_creator); |
| if (params::IsLoFiDisabledViaFlags()) |
| @@ -548,13 +549,10 @@ bool DataReductionProxyConfig::UsingHTTPTunnel( |
| return config_values_->UsingHTTPTunnel(proxy_server); |
| } |
| -// Returns true if the Data Reduction Proxy configuration may be used. |
| bool DataReductionProxyConfig::allowed() const { |
| return config_values_->allowed(); |
| } |
| -// Returns true if the Data Reduction Proxy promo may be shown. This is not |
| -// tied to whether the Data Reduction Proxy is enabled. |
| bool DataReductionProxyConfig::promo_allowed() const { |
| return config_values_->promo_allowed(); |
| } |
| @@ -647,6 +645,29 @@ void DataReductionProxyConfig::HandleSecureProxyCheckResponse( |
| secure_proxy_allowed_ = false; |
| } |
| +void DataReductionProxyConfig::GetTrustedSpdyProxy( |
| + net::ProxyServer* trusted_spdy_proxy) const { |
| + DCHECK(thread_checker_.CalledOnValidThread()); |
| + |
| + if (!params::IsIncludedInTrustedSpdyProxyFieldTrial()) |
| + return; |
| + |
| + const std::vector<net::ProxyServer> proxies_for_http = |
|
bengr
2016/01/11 22:29:35
Should this be a const std::vector<net::ProxyServe
tbansal1
2016/01/12 20:50:51
Done.
|
| + config_values_->proxies_for_http(); |
| + // Trusted SPDY proxy should be a valid HTTPS proxy. |
| + if (enabled_by_user_ && proxies_for_http.size() >= 1 && |
| + proxies_for_http[0].is_valid() && proxies_for_http[0].is_https()) { |
| + *trusted_spdy_proxy = proxies_for_http[0]; |
| + } |
| +} |
| + |
| +base::WeakPtr<net::TrustedSpdyProxyProvider> |
| +DataReductionProxyConfig::GetWeakPtr() { |
| + DCHECK(thread_checker_.CalledOnValidThread()); |
| + |
| + return weak_factory_.GetWeakPtr(); |
| +} |
| + |
| void DataReductionProxyConfig::OnIPAddressChanged() { |
| if (enabled_by_user_) { |
| DCHECK(config_values_->allowed()); |