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

Unified Diff: components/data_reduction_proxy/core/browser/data_reduction_proxy_io_data.h

Issue 1363673004: [DRP] Consistently use LoFi for an entire page (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: final comments Created 5 years, 2 months 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: 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..6502854e45401200168925b9c2117c9cbf19ec74 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/lofi_decider.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 mode should be activated. When Lo-Fi mode is
+ // active, URL requests are modified to request low fidelity versions of the
+ // resources, except when the user is in the Lo-Fi control group.
+ bool ShouldEnableLoFiMode(const net::URLRequest& request);
+
// Sets Lo-Fi mode off in |config_|.
void SetLoFiModeOff();
@@ -162,6 +168,12 @@ class DataReductionProxyIOData : public DataReductionProxyEventStorageDelegate {
debug_ui_service_= ui_service.Pass();
}
+ LoFiDecider* lofi_decider() const { return lofi_decider_.get(); }
+
+ void set_lofi_decider(scoped_ptr<LoFiDecider> lofi_decider) const {
+ lofi_decider_ = lofi_decider.Pass();
+ }
+
private:
friend class TestDataReductionProxyIOData;
FRIEND_TEST_ALL_PREFIXES(DataReductionProxyIODataTest, TestConstruction);
@@ -199,6 +211,9 @@ class DataReductionProxyIOData : public DataReductionProxyEventStorageDelegate {
// interstitials.
mutable scoped_ptr<DataReductionProxyDebugUIService> debug_ui_service_;
+ // Handles getting if a request is in Lo-Fi mode.
+ mutable scoped_ptr<LoFiDecider> lofi_decider_;
+
// Creates Data Reduction Proxy-related events for logging.
scoped_ptr<DataReductionProxyEventCreator> event_creator_;

Powered by Google App Engine
This is Rietveld 408576698