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

Side by Side Diff: chrome/browser/loader/chrome_resource_dispatcher_host_delegate.cc

Issue 2828663002: Rewrite base::Bind to base::BindOnce with base_bind_rewriters in //chrome/browser/{i,l,m,n,p,r}* (Closed)
Patch Set: Created 3 years, 8 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 #include "chrome/browser/loader/chrome_resource_dispatcher_host_delegate.h" 5 #include "chrome/browser/loader/chrome_resource_dispatcher_host_delegate.h"
6 6
7 #include <stdint.h> 7 #include <stdint.h>
8 #include <string> 8 #include <string>
9 #include <utility> 9 #include <utility>
10 #include <vector> 10 #include <vector>
(...skipping 379 matching lines...) Expand 10 before | Expand all | Expand 10 after
390 390
391 ChromeResourceDispatcherHostDelegate::ChromeResourceDispatcherHostDelegate() 391 ChromeResourceDispatcherHostDelegate::ChromeResourceDispatcherHostDelegate()
392 : download_request_limiter_(g_browser_process->download_request_limiter()), 392 : download_request_limiter_(g_browser_process->download_request_limiter()),
393 safe_browsing_(g_browser_process->safe_browsing_service()) 393 safe_browsing_(g_browser_process->safe_browsing_service())
394 #if BUILDFLAG(ENABLE_EXTENSIONS) 394 #if BUILDFLAG(ENABLE_EXTENSIONS)
395 , user_script_listener_(new extensions::UserScriptListener()) 395 , user_script_listener_(new extensions::UserScriptListener())
396 #endif 396 #endif
397 { 397 {
398 BrowserThread::PostTask( 398 BrowserThread::PostTask(
399 BrowserThread::IO, FROM_HERE, 399 BrowserThread::IO, FROM_HERE,
400 base::Bind(content::ServiceWorkerContext::AddExcludedHeadersForFetchEvent, 400 base::BindOnce(
401 variations::GetVariationHeaderNames())); 401 content::ServiceWorkerContext::AddExcludedHeadersForFetchEvent,
402 variations::GetVariationHeaderNames()));
402 } 403 }
403 404
404 ChromeResourceDispatcherHostDelegate::~ChromeResourceDispatcherHostDelegate() { 405 ChromeResourceDispatcherHostDelegate::~ChromeResourceDispatcherHostDelegate() {
405 #if BUILDFLAG(ENABLE_EXTENSIONS) 406 #if BUILDFLAG(ENABLE_EXTENSIONS)
406 CHECK(stream_target_info_.empty()); 407 CHECK(stream_target_info_.empty());
407 #endif 408 #endif
408 } 409 }
409 410
410 bool ChromeResourceDispatcherHostDelegate::ShouldBeginRequest( 411 bool ChromeResourceDispatcherHostDelegate::ShouldBeginRequest(
411 const std::string& method, 412 const std::string& method,
(...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after
509 net::URLRequest* request, 510 net::URLRequest* request,
510 content::ResourceContext* resource_context, 511 content::ResourceContext* resource_context,
511 bool is_content_initiated, 512 bool is_content_initiated,
512 bool must_download, 513 bool must_download,
513 bool is_new_request, 514 bool is_new_request,
514 std::vector<std::unique_ptr<content::ResourceThrottle>>* throttles) { 515 std::vector<std::unique_ptr<content::ResourceThrottle>>* throttles) {
515 const content::ResourceRequestInfo* info = 516 const content::ResourceRequestInfo* info =
516 content::ResourceRequestInfo::ForRequest(request); 517 content::ResourceRequestInfo::ForRequest(request);
517 BrowserThread::PostTask( 518 BrowserThread::PostTask(
518 BrowserThread::UI, FROM_HERE, 519 BrowserThread::UI, FROM_HERE,
519 base::Bind(&NotifyDownloadInitiatedOnUI, 520 base::BindOnce(&NotifyDownloadInitiatedOnUI,
520 info->GetWebContentsGetterForRequest())); 521 info->GetWebContentsGetterForRequest()));
521 522
522 // If it's from the web, we don't trust it, so we push the throttle on. 523 // If it's from the web, we don't trust it, so we push the throttle on.
523 if (is_content_initiated) { 524 if (is_content_initiated) {
524 throttles->push_back(base::MakeUnique<DownloadResourceThrottle>( 525 throttles->push_back(base::MakeUnique<DownloadResourceThrottle>(
525 download_request_limiter_, info->GetWebContentsGetterForRequest(), 526 download_request_limiter_, info->GetWebContentsGetterForRequest(),
526 request->url(), request->method())); 527 request->url(), request->method()));
527 } 528 }
528 529
529 // If this isn't a new request, the standard resource throttles have already 530 // If this isn't a new request, the standard resource throttles have already
530 // been added, so no need to add them again. 531 // been added, so no need to add them again.
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after
592 // Main frame external protocols are handled by 593 // Main frame external protocols are handled by
593 // InterceptNavigationResourceThrottle. 594 // InterceptNavigationResourceThrottle.
594 if (info->IsMainFrame()) 595 if (info->IsMainFrame())
595 return false; 596 return false;
596 #endif // defined(ANDROID) 597 #endif // defined(ANDROID)
597 598
598 const bool is_whitelisted = 599 const bool is_whitelisted =
599 url_state == policy::URLBlacklist::URLBlacklistState::URL_IN_WHITELIST; 600 url_state == policy::URLBlacklist::URLBlacklistState::URL_IN_WHITELIST;
600 BrowserThread::PostTask( 601 BrowserThread::PostTask(
601 BrowserThread::UI, FROM_HERE, 602 BrowserThread::UI, FROM_HERE,
602 base::Bind(&LaunchURL, url, info->GetWebContentsGetterForRequest(), 603 base::BindOnce(&LaunchURL, url, info->GetWebContentsGetterForRequest(),
603 info->GetPageTransition(), info->HasUserGesture(), 604 info->GetPageTransition(), info->HasUserGesture(),
604 is_whitelisted)); 605 is_whitelisted));
605 return true; 606 return true;
606 } 607 }
607 608
608 void ChromeResourceDispatcherHostDelegate::AppendStandardResourceThrottles( 609 void ChromeResourceDispatcherHostDelegate::AppendStandardResourceThrottles(
609 net::URLRequest* request, 610 net::URLRequest* request,
610 content::ResourceContext* resource_context, 611 content::ResourceContext* resource_context,
611 ResourceType resource_type, 612 ResourceType resource_type,
612 std::vector<std::unique_ptr<content::ResourceThrottle>>* throttles) { 613 std::vector<std::unique_ptr<content::ResourceThrottle>>* throttles) {
613 ProfileIOData* io_data = ProfileIOData::FromResourceContext(resource_context); 614 ProfileIOData* io_data = ProfileIOData::FromResourceContext(resource_context);
614 615
(...skipping 115 matching lines...) Expand 10 before | Expand all | Expand 10 after
730 net::URLRequest* request, 731 net::URLRequest* request,
731 std::unique_ptr<content::StreamInfo> stream) { 732 std::unique_ptr<content::StreamInfo> stream) {
732 #if BUILDFLAG(ENABLE_EXTENSIONS) 733 #if BUILDFLAG(ENABLE_EXTENSIONS)
733 const ResourceRequestInfo* info = ResourceRequestInfo::ForRequest(request); 734 const ResourceRequestInfo* info = ResourceRequestInfo::ForRequest(request);
734 std::map<net::URLRequest*, StreamTargetInfo>::iterator ix = 735 std::map<net::URLRequest*, StreamTargetInfo>::iterator ix =
735 stream_target_info_.find(request); 736 stream_target_info_.find(request);
736 CHECK(ix != stream_target_info_.end()); 737 CHECK(ix != stream_target_info_.end());
737 bool embedded = info->GetResourceType() != content::RESOURCE_TYPE_MAIN_FRAME; 738 bool embedded = info->GetResourceType() != content::RESOURCE_TYPE_MAIN_FRAME;
738 content::BrowserThread::PostTask( 739 content::BrowserThread::PostTask(
739 content::BrowserThread::UI, FROM_HERE, 740 content::BrowserThread::UI, FROM_HERE,
740 base::Bind(&SendExecuteMimeTypeHandlerEvent, base::Passed(&stream), 741 base::BindOnce(&SendExecuteMimeTypeHandlerEvent, base::Passed(&stream),
741 request->GetExpectedContentSize(), ix->second.extension_id, 742 request->GetExpectedContentSize(), ix->second.extension_id,
742 ix->second.view_id, embedded, info->GetFrameTreeNodeId(), 743 ix->second.view_id, embedded, info->GetFrameTreeNodeId(),
743 info->GetChildID(), info->GetRenderFrameID())); 744 info->GetChildID(), info->GetRenderFrameID()));
744 stream_target_info_.erase(request); 745 stream_target_info_.erase(request);
745 #endif 746 #endif
746 } 747 }
747 748
748 void ChromeResourceDispatcherHostDelegate::OnResponseStarted( 749 void ChromeResourceDispatcherHostDelegate::OnResponseStarted(
749 net::URLRequest* request, 750 net::URLRequest* request,
750 content::ResourceContext* resource_context, 751 content::ResourceContext* resource_context,
751 content::ResourceResponse* response) { 752 content::ResourceResponse* response) {
752 const ResourceRequestInfo* info = ResourceRequestInfo::ForRequest(request); 753 const ResourceRequestInfo* info = ResourceRequestInfo::ForRequest(request);
753 ProfileIOData* io_data = ProfileIOData::FromResourceContext(resource_context); 754 ProfileIOData* io_data = ProfileIOData::FromResourceContext(resource_context);
(...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after
823 data_reduction_proxy::DataReductionProxyData* data = 824 data_reduction_proxy::DataReductionProxyData* data =
824 data_reduction_proxy::DataReductionProxyData::GetData(*url_request); 825 data_reduction_proxy::DataReductionProxyData::GetData(*url_request);
825 bool used_data_reduction_proxy = data && data->used_data_reduction_proxy(); 826 bool used_data_reduction_proxy = data && data->used_data_reduction_proxy();
826 int64_t original_content_length = 827 int64_t original_content_length =
827 used_data_reduction_proxy 828 used_data_reduction_proxy
828 ? data_reduction_proxy::util::CalculateEffectiveOCL(*url_request) 829 ? data_reduction_proxy::util::CalculateEffectiveOCL(*url_request)
829 : url_request->GetRawBodyBytes(); 830 : url_request->GetRawBodyBytes();
830 831
831 BrowserThread::PostTask( 832 BrowserThread::PostTask(
832 BrowserThread::UI, FROM_HERE, 833 BrowserThread::UI, FROM_HERE,
833 base::Bind(&NotifyUIThreadOfRequestComplete, 834 base::BindOnce(&NotifyUIThreadOfRequestComplete,
834 info->GetWebContentsGetterForRequest(), url_request->url(), 835 info->GetWebContentsGetterForRequest(), url_request->url(),
835 info->GetGlobalRequestID(), info->GetResourceType(), 836 info->GetGlobalRequestID(), info->GetResourceType(),
836 url_request->was_cached(), used_data_reduction_proxy, 837 url_request->was_cached(), used_data_reduction_proxy,
837 net_error, url_request->GetTotalReceivedBytes(), 838 net_error, url_request->GetTotalReceivedBytes(),
838 url_request->GetRawBodyBytes(), original_content_length, 839 url_request->GetRawBodyBytes(), original_content_length,
839 url_request->creation_time(), 840 url_request->creation_time(),
840 base::TimeTicks::Now() - url_request->creation_time())); 841 base::TimeTicks::Now() - url_request->creation_time()));
841 } 842 }
842 843
843 content::PreviewsState ChromeResourceDispatcherHostDelegate::GetPreviewsState( 844 content::PreviewsState ChromeResourceDispatcherHostDelegate::GetPreviewsState(
844 const net::URLRequest& url_request, 845 const net::URLRequest& url_request,
845 content::ResourceContext* resource_context) { 846 content::ResourceContext* resource_context) {
846 ProfileIOData* io_data = ProfileIOData::FromResourceContext(resource_context); 847 ProfileIOData* io_data = ProfileIOData::FromResourceContext(resource_context);
847 data_reduction_proxy::DataReductionProxyIOData* data_reduction_proxy_io_data = 848 data_reduction_proxy::DataReductionProxyIOData* data_reduction_proxy_io_data =
848 io_data->data_reduction_proxy_io_data(); 849 io_data->data_reduction_proxy_io_data();
849 850
850 content::PreviewsState previews_state = content::PREVIEWS_UNSPECIFIED; 851 content::PreviewsState previews_state = content::PREVIEWS_UNSPECIFIED;
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after
900 return ProfileIOData::FromResourceContext(resource_context)-> 901 return ProfileIOData::FromResourceContext(resource_context)->
901 CreateClientCertStore(); 902 CreateClientCertStore();
902 } 903 }
903 904
904 // Record RAPPOR for aborted main frame loads. Separate into a fast and 905 // Record RAPPOR for aborted main frame loads. Separate into a fast and
905 // slow bucket because a shocking number of aborts happen under 100ms. 906 // slow bucket because a shocking number of aborts happen under 100ms.
906 void ChromeResourceDispatcherHostDelegate::OnAbortedFrameLoad( 907 void ChromeResourceDispatcherHostDelegate::OnAbortedFrameLoad(
907 const GURL& url, 908 const GURL& url,
908 base::TimeDelta request_loading_time) { 909 base::TimeDelta request_loading_time) {
909 if (!content::BrowserThread::CurrentlyOn(content::BrowserThread::UI)) { 910 if (!content::BrowserThread::CurrentlyOn(content::BrowserThread::UI)) {
910 BrowserThread::PostTask( 911 BrowserThread::PostTask(
911 BrowserThread::UI, FROM_HERE, 912 BrowserThread::UI, FROM_HERE,
912 base::Bind(&ChromeResourceDispatcherHostDelegate::OnAbortedFrameLoad, 913 base::BindOnce(
913 base::Unretained(this), url, request_loading_time)); 914 &ChromeResourceDispatcherHostDelegate::OnAbortedFrameLoad,
914 return; 915 base::Unretained(this), url, request_loading_time));
916 return;
915 } 917 }
916 918
917 std::string metric_name = (request_loading_time.InMilliseconds() < 100 ? 919 std::string metric_name = (request_loading_time.InMilliseconds() < 100 ?
918 "Net.ErrAborted.Fast" : "Net.ErrAborted.Slow"); 920 "Net.ErrAborted.Fast" : "Net.ErrAborted.Slow");
919 rappor::SampleDomainAndRegistryFromGURL( 921 rappor::SampleDomainAndRegistryFromGURL(
920 g_browser_process->rappor_service(), metric_name, url); 922 g_browser_process->rappor_service(), metric_name, url);
921 } 923 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698