| Index: components/data_reduction_proxy/core/browser/data_reduction_proxy_io_data.h
|
| diff --git a/components/data_reduction_proxy/core/browser/data_reduction_proxy_io_data.h b/components/data_reduction_proxy/core/browser/data_reduction_proxy_io_data.h
|
| index 141a09b6fb89bd36f55e5f3f3fedd2505fade0f5..32def1676e997efd44799f5a76bb38bf18762418 100644
|
| --- a/components/data_reduction_proxy/core/browser/data_reduction_proxy_io_data.h
|
| +++ b/components/data_reduction_proxy/core/browser/data_reduction_proxy_io_data.h
|
| @@ -18,6 +18,7 @@
|
| #include "components/data_reduction_proxy/core/browser/data_reduction_proxy_network_delegate.h"
|
| #include "components/data_reduction_proxy/core/browser/data_reduction_proxy_request_options.h"
|
| #include "components/data_reduction_proxy/core/common/data_reduction_proxy_event_storage_delegate.h"
|
| +#include "components/data_reduction_proxy/core/common/data_reduction_proxy_lofi_helper.h"
|
|
|
| namespace base {
|
| class Value;
|
| @@ -87,6 +88,11 @@ class DataReductionProxyIOData : public DataReductionProxyEventStorageDelegate {
|
| // Applies a serialized Data Reduction Proxy configuration.
|
| void SetDataReductionProxyConfiguration(const std::string& serialized_config);
|
|
|
| + // Returns true when Lo-Fi "q=low" header should be added to the Chrome Proxy
|
| + // header or when the user is in the Lo-Fi "Control" group and the network
|
| + // quality is prohibitively slow. Should be called only on main frame loads.
|
| + bool ShouldEnableLoFiMode(net::URLRequest* url_request);
|
| +
|
| // Sets Lo-Fi mode off in |config_|.
|
| void SetLoFiModeOff();
|
|
|
| @@ -162,6 +168,15 @@ class DataReductionProxyIOData : public DataReductionProxyEventStorageDelegate {
|
| debug_ui_service_= ui_service.Pass();
|
| }
|
|
|
| + DataReductionProxyLoFiHelper* lofi_helper() const {
|
| + return lofi_helper_.get();
|
| + }
|
| +
|
| + void set_lofi_helper(
|
| + scoped_ptr<DataReductionProxyLoFiHelper> lofi_helper) const {
|
| + lofi_helper_ = lofi_helper.Pass();
|
| + }
|
| +
|
| private:
|
| friend class TestDataReductionProxyIOData;
|
| FRIEND_TEST_ALL_PREFIXES(DataReductionProxyIODataTest, TestConstruction);
|
| @@ -199,6 +214,9 @@ class DataReductionProxyIOData : public DataReductionProxyEventStorageDelegate {
|
| // interstitials.
|
| mutable scoped_ptr<DataReductionProxyDebugUIService> debug_ui_service_;
|
|
|
| + // Handles the getting and setting of the Lo-Fi UserData on a request.
|
| + mutable scoped_ptr<DataReductionProxyLoFiHelper> lofi_helper_;
|
| +
|
| // Creates Data Reduction Proxy-related events for logging.
|
| scoped_ptr<DataReductionProxyEventCreator> event_creator_;
|
|
|
|
|