Commit 7f80bcc5 authored by Thanh Le's avatar Thanh Le Committed by Commit Bot

Refactor DataReductionProxyConfig ShouldEnableServerPreviews().

Merge DataReductionProxyConfig::ShouldEnableServerPreviews() into
DataReductionProxyConfig::ShouldAcceptServerPreview().

Bug: 790733
Change-Id: Iea803f50c5f0346e4ade31e80fcb98f18d3c99d7
Reviewed-on: https://chromium-review.googlesource.com/803670Reviewed-by: default avatarLei Zhang <thestig@chromium.org>
Reviewed-by: default avatarDoug Arnett <dougarnett@chromium.org>
Commit-Queue: Thanh Le <thanhdle@chromium.org>
Cr-Commit-Position: refs/heads/master@{#521159}
parent 13a84569
......@@ -926,7 +926,7 @@ ChromeResourceDispatcherHostDelegate::DeterminePreviewsState(
if (data_reduction_proxy_io_data && previews_io_data) {
previews::PreviewsUserData::Create(url_request,
previews_io_data->GeneratePageId());
if (data_reduction_proxy_io_data->ShouldEnableServerPreviews(
if (data_reduction_proxy_io_data->ShouldAcceptServerPreview(
*url_request, previews_io_data)) {
previews_state |= content::SERVER_LOFI_ON;
previews_state |= content::SERVER_LITE_PAGE_ON;
......
......@@ -552,16 +552,6 @@ void DataReductionProxyConfig::FetchWarmupURL() {
warmup_url_fetcher_->FetchWarmupURL();
}
bool DataReductionProxyConfig::ShouldEnableServerPreviews(
const net::URLRequest& request,
const previews::PreviewsDecider& previews_decider) {
DCHECK(thread_checker_.CalledOnValidThread());
DCHECK((request.load_flags() & net::LOAD_MAIN_FRAME_DEPRECATED) != 0);
DCHECK(!request.url().SchemeIsCryptographic());
return ShouldAcceptServerPreview(request, previews_decider);
}
bool DataReductionProxyConfig::enabled_by_user_and_reachable() const {
DCHECK(thread_checker_.CalledOnValidThread());
return enabled_by_user_ && !unreachable_;
......@@ -584,6 +574,8 @@ bool DataReductionProxyConfig::ShouldAcceptServerPreview(
const net::URLRequest& request,
const previews::PreviewsDecider& previews_decider) const {
DCHECK(thread_checker_.CalledOnValidThread());
DCHECK((request.load_flags() & net::LOAD_MAIN_FRAME_DEPRECATED) != 0);
DCHECK(!request.url().SchemeIsCryptographic());
if (!base::FeatureList::IsEnabled(
features::kDataReductionProxyDecidesTransform)) {
......
......@@ -173,13 +173,14 @@ class DataReductionProxyConfig
virtual bool ContainsDataReductionProxy(
const net::ProxyConfig::ProxyRules& proxy_rules) const;
// Returns true when server previews should be activated. Records metrics for
// previews state changes. |request| is used to get the network quality
// estimator from the URLRequestContext. |previews_decider| is used to check
// if |request| is locally blacklisted.
bool ShouldEnableServerPreviews(
// Returns whether the client should report to the data reduction proxy that
// it is willing to accept server previews for |request|.
// |previews_decider| is used to check if |request| is locally blacklisted.
// Should only be used if the kDataReductionProxyDecidesTransform feature is
// enabled.
bool ShouldAcceptServerPreview(
const net::URLRequest& request,
const previews::PreviewsDecider& previews_decider);
const previews::PreviewsDecider& previews_decider) const;
// Returns true if the data saver has been enabled by the user, and the data
// saver proxy is reachable.
......@@ -283,15 +284,6 @@ class DataReductionProxyConfig
const previews::PreviewsDecider& previews_decider,
previews::PreviewsType previews_type) const;
// Returns whether the client should report to the data reduction proxy that
// it is willing to accept server previews for |request|.
// |previews_decider| is used to check if |request| is locally blacklisted.
// Should only be used if the kDataReductionProxyDecidesTransform feature is
// enabled.
bool ShouldAcceptServerPreview(
const net::URLRequest& request,
const previews::PreviewsDecider& previews_decider) const;
// Checks if the current network has captive portal, and handles the result.
// If the captive portal probe was blocked on the current network, disables
// the use of secure proxies.
......
......@@ -1011,11 +1011,11 @@ TEST_F(DataReductionProxyConfigTest, ShouldEnableServerPreviews) {
net::LOAD_MAIN_FRAME_DEPRECATED);
std::unique_ptr<TestPreviewsDecider> previews_decider =
base::MakeUnique<TestPreviewsDecider>(true);
EXPECT_TRUE(test_config()->ShouldEnableServerPreviews(
EXPECT_TRUE(test_config()->ShouldAcceptServerPreview(
*request.get(), *previews_decider.get()));
previews_decider = base::MakeUnique<TestPreviewsDecider>(false);
EXPECT_FALSE(test_config()->ShouldEnableServerPreviews(
EXPECT_FALSE(test_config()->ShouldAcceptServerPreview(
*request.get(), *previews_decider.get()));
}
......
......@@ -309,7 +309,7 @@ void DataReductionProxyIOData::SetDataReductionProxyConfiguration(
config_client_->ApplySerializedConfig(serialized_config);
}
bool DataReductionProxyIOData::ShouldEnableServerPreviews(
bool DataReductionProxyIOData::ShouldAcceptServerPreview(
const net::URLRequest& request,
previews::PreviewsDecider* previews_decider) {
DCHECK(previews_decider);
......@@ -318,7 +318,7 @@ bool DataReductionProxyIOData::ShouldEnableServerPreviews(
request, configurator_->GetProxyConfig()))) {
return false;
}
return config_->ShouldEnableServerPreviews(request, *previews_decider);
return config_->ShouldAcceptServerPreview(request, *previews_decider);
}
void DataReductionProxyIOData::UpdateDataUseForHost(int64_t network_bytes,
......
......@@ -107,8 +107,8 @@ class DataReductionProxyIOData : public DataReductionProxyEventStorageDelegate {
// are active, URL requests are modified to request low fidelity versions of
// the resources.|previews_decider| is a non-null object that determines
// eligibility of showing the preview based on past opt outs.
bool ShouldEnableServerPreviews(const net::URLRequest& request,
previews::PreviewsDecider* previews_decider);
bool ShouldAcceptServerPreview(const net::URLRequest& request,
previews::PreviewsDecider* previews_decider);
// Bridge methods to safely call to the UI thread objects.
void UpdateDataUseForHost(int64_t network_bytes,
......
......@@ -981,7 +981,7 @@ TEST_F(DataReductionProxyNetworkDelegateTest, LoFiTransitions) {
std::unique_ptr<net::URLRequest> fake_request = context()->CreateRequest(
GURL(kTestURL), net::IDLE, &delegate, TRAFFIC_ANNOTATION_FOR_TESTS);
fake_request->SetLoadFlags(net::LOAD_MAIN_FRAME_DEPRECATED);
lofi_decider()->SetIsUsingLoFi(config()->ShouldEnableServerPreviews(
lofi_decider()->SetIsUsingLoFi(config()->ShouldAcceptServerPreview(
*fake_request.get(), test_previews_decider));
NotifyNetworkDelegate(fake_request.get(), data_reduction_proxy_info,
proxy_retry_info, &headers);
......@@ -989,8 +989,8 @@ TEST_F(DataReductionProxyNetworkDelegateTest, LoFiTransitions) {
VerifyHeaders(tests[i].is_data_reduction_proxy, true, headers);
VerifyDataReductionProxyData(
*fake_request, tests[i].is_data_reduction_proxy,
config()->ShouldEnableServerPreviews(*fake_request.get(),
test_previews_decider));
config()->ShouldAcceptServerPreview(*fake_request.get(),
test_previews_decider));
}
{
......@@ -1064,14 +1064,14 @@ TEST_F(DataReductionProxyNetworkDelegateTest, LoFiTransitions) {
std::unique_ptr<net::URLRequest> fake_request = context()->CreateRequest(
GURL(kTestURL), net::IDLE, &delegate, TRAFFIC_ANNOTATION_FOR_TESTS);
fake_request->SetLoadFlags(net::LOAD_MAIN_FRAME_DEPRECATED);
lofi_decider()->SetIsUsingLoFi(config()->ShouldEnableServerPreviews(
lofi_decider()->SetIsUsingLoFi(config()->ShouldAcceptServerPreview(
*fake_request.get(), test_previews_decider));
NotifyNetworkDelegate(fake_request.get(), data_reduction_proxy_info,
proxy_retry_info, &headers);
VerifyDataReductionProxyData(
*fake_request, tests[i].is_data_reduction_proxy,
config()->ShouldEnableServerPreviews(*fake_request.get(),
test_previews_decider));
config()->ShouldAcceptServerPreview(*fake_request.get(),
test_previews_decider));
}
}
}
......@@ -1361,7 +1361,7 @@ TEST_F(DataReductionProxyNetworkDelegateTest, NetHistograms) {
// Needed as a parameter, but functionality is not tested.
TestPreviewsDecider test_previews_decider;
lofi_decider()->SetIsUsingLoFi(config()->ShouldEnableServerPreviews(
lofi_decider()->SetIsUsingLoFi(config()->ShouldAcceptServerPreview(
*fake_request.get(), test_previews_decider));
fake_request = (FetchURLRequest(GURL(kTestURL), nullptr, response_headers,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment