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

Side by Side Diff: content/browser/loader/resource_dispatcher_host_impl.cc

Issue 1310743003: Consistently use LoFi for an entire page (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: using UserData and adressing nasko comments Created 5 years, 3 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 unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 // See http://dev.chromium.org/developers/design-documents/multi-process-resourc e-loading 5 // See http://dev.chromium.org/developers/design-documents/multi-process-resourc e-loading
6 6
7 #include "content/browser/loader/resource_dispatcher_host_impl.h" 7 #include "content/browser/loader/resource_dispatcher_host_impl.h"
8 8
9 #include <algorithm> 9 #include <algorithm>
10 #include <set> 10 #include <set>
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after
70 #include "content/public/browser/download_url_parameters.h" 70 #include "content/public/browser/download_url_parameters.h"
71 #include "content/public/browser/global_request_id.h" 71 #include "content/public/browser/global_request_id.h"
72 #include "content/public/browser/plugin_service.h" 72 #include "content/public/browser/plugin_service.h"
73 #include "content/public/browser/resource_dispatcher_host_delegate.h" 73 #include "content/public/browser/resource_dispatcher_host_delegate.h"
74 #include "content/public/browser/resource_request_details.h" 74 #include "content/public/browser/resource_request_details.h"
75 #include "content/public/browser/resource_throttle.h" 75 #include "content/public/browser/resource_throttle.h"
76 #include "content/public/browser/stream_handle.h" 76 #include "content/public/browser/stream_handle.h"
77 #include "content/public/browser/stream_info.h" 77 #include "content/public/browser/stream_info.h"
78 #include "content/public/browser/user_metrics.h" 78 #include "content/public/browser/user_metrics.h"
79 #include "content/public/common/content_switches.h" 79 #include "content/public/common/content_switches.h"
80 #include "content/public/common/data_reduction_proxy_lofi_user_data.h"
80 #include "content/public/common/process_type.h" 81 #include "content/public/common/process_type.h"
81 #include "ipc/ipc_message_macros.h" 82 #include "ipc/ipc_message_macros.h"
82 #include "ipc/ipc_message_start.h" 83 #include "ipc/ipc_message_start.h"
83 #include "net/base/auth.h" 84 #include "net/base/auth.h"
84 #include "net/base/load_flags.h" 85 #include "net/base/load_flags.h"
85 #include "net/base/mime_util.h" 86 #include "net/base/mime_util.h"
86 #include "net/base/net_errors.h" 87 #include "net/base/net_errors.h"
87 #include "net/base/registry_controlled_domains/registry_controlled_domain.h" 88 #include "net/base/registry_controlled_domains/registry_controlled_domain.h"
88 #include "net/base/request_priority.h" 89 #include "net/base/request_priority.h"
89 #include "net/base/upload_data_stream.h" 90 #include "net/base/upload_data_stream.h"
(...skipping 1133 matching lines...) Expand 10 before | Expand all | Expand 10 after
1223 return; 1224 return;
1224 } 1225 }
1225 1226
1226 // Construct the request. 1227 // Construct the request.
1227 scoped_ptr<net::URLRequest> new_request = request_context->CreateRequest( 1228 scoped_ptr<net::URLRequest> new_request = request_context->CreateRequest(
1228 request_data.url, request_data.priority, NULL); 1229 request_data.url, request_data.priority, NULL);
1229 1230
1230 new_request->set_method(request_data.method); 1231 new_request->set_method(request_data.method);
1231 new_request->set_first_party_for_cookies( 1232 new_request->set_first_party_for_cookies(
1232 request_data.first_party_for_cookies); 1233 request_data.first_party_for_cookies);
1234 new_request->SetUserData(
1235 DataReductionProxyLoFiUserData::kUserDataKey,
1236 new DataReductionProxyLoFiUserData(request_data.lofi_state));
1233 1237
1234 // If the request is a MAIN_FRAME request, the first-party URL gets updated on 1238 // If the request is a MAIN_FRAME request, the first-party URL gets updated on
1235 // redirects. 1239 // redirects.
1236 if (request_data.resource_type == RESOURCE_TYPE_MAIN_FRAME) { 1240 if (request_data.resource_type == RESOURCE_TYPE_MAIN_FRAME) {
1237 new_request->set_first_party_url_policy( 1241 new_request->set_first_party_url_policy(
1238 net::URLRequest::UPDATE_FIRST_PARTY_URL_ON_REDIRECT); 1242 net::URLRequest::UPDATE_FIRST_PARTY_URL_ON_REDIRECT);
1239 } 1243 }
1240 1244
1241 const Referrer referrer(request_data.referrer, request_data.referrer_policy); 1245 const Referrer referrer(request_data.referrer, request_data.referrer_policy);
1242 SetReferrerForRequest(new_request.get(), referrer); 1246 SetReferrerForRequest(new_request.get(), referrer);
(...skipping 1156 matching lines...) Expand 10 before | Expand all | Expand 10 after
2399 load_flags |= net::LOAD_PREFETCH; 2403 load_flags |= net::LOAD_PREFETCH;
2400 } 2404 }
2401 2405
2402 if (is_sync_load) 2406 if (is_sync_load)
2403 load_flags |= net::LOAD_IGNORE_LIMITS; 2407 load_flags |= net::LOAD_IGNORE_LIMITS;
2404 2408
2405 return load_flags; 2409 return load_flags;
2406 } 2410 }
2407 2411
2408 } // namespace content 2412 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698