| Index: components/data_reduction_proxy/core/browser/data_reduction_proxy_settings.h
|
| diff --git a/components/data_reduction_proxy/core/browser/data_reduction_proxy_settings.h b/components/data_reduction_proxy/core/browser/data_reduction_proxy_settings.h
|
| index f5b70a466c3a497dead6286b4ea8bdcb063d3254..8107f0f3d057ad58ac4debc81df993f5305d478a 100644
|
| --- a/components/data_reduction_proxy/core/browser/data_reduction_proxy_settings.h
|
| +++ b/components/data_reduction_proxy/core/browser/data_reduction_proxy_settings.h
|
| @@ -29,6 +29,11 @@ class DataReductionProxyStatisticsPrefs;
|
| // The number of days of bandwidth usage statistics that are tracked.
|
| const unsigned int kNumDaysInHistory = 60;
|
|
|
| +// The header used to request a data reduction proxy pass through. When a
|
| +// request is sent to the data reduction proxy with this header, it will respond
|
| +// with the original uncompressed response.
|
| +extern const char kDataReductionPassThroughHeader[];
|
| +
|
| // The number of days of bandwidth usage statistics that are presented.
|
| const unsigned int kNumDaysInHistorySummary = 30;
|
|
|
| @@ -74,7 +79,17 @@ class DataReductionProxySettings {
|
| const base::Callback<void(bool)>& on_data_reduction_proxy_enabled);
|
|
|
| // Returns true if the proxy is enabled.
|
| - bool IsDataReductionProxyEnabled();
|
| + bool IsDataReductionProxyEnabled() const;
|
| +
|
| + // Returns true if the proxy can be used for the given url. This method does
|
| + // not take into account the proxy config or proxy retry list, so it can
|
| + // return true even when the proxy will not be used. Specifically, if
|
| + // another proxy configuration overrides use of data reduction proxy, or
|
| + // if data reduction proxy is in proxy retry list, then data reduction proxy
|
| + // will not be used, but this method will still return true. If this method
|
| + // returns false, then we are guaranteed that data reduction proxy will not be
|
| + // used.
|
| + bool CanUseDataReductionProxy(const GURL& url) const;
|
|
|
| // Returns true if the alternative proxy is enabled.
|
| bool IsDataReductionProxyAlternativeEnabled() const;
|
| @@ -186,7 +201,8 @@ class DataReductionProxySettings {
|
| FRIEND_TEST_ALL_PREFIXES(DataReductionProxySettingsTest,
|
| TestIsProxyEnabledOrManaged);
|
| FRIEND_TEST_ALL_PREFIXES(DataReductionProxySettingsTest,
|
| - TestContentLengths);
|
| + TestCanUseDataReductionProxy);
|
| + FRIEND_TEST_ALL_PREFIXES(DataReductionProxySettingsTest, TestContentLengths);
|
| FRIEND_TEST_ALL_PREFIXES(DataReductionProxySettingsTest,
|
| TestGetDailyContentLengths);
|
| FRIEND_TEST_ALL_PREFIXES(DataReductionProxySettingsTest,
|
|
|