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

Unified Diff: content/browser/loader/url_loader_factory_impl.cc

Issue 2481093003: Introduce ResourceRequesterInfo to abstract the requester of resource request (Closed)
Patch Set: Created 4 years, 1 month 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: content/browser/loader/url_loader_factory_impl.cc
diff --git a/content/browser/loader/url_loader_factory_impl.cc b/content/browser/loader/url_loader_factory_impl.cc
index c510c147f2b67d484aa632ccb10f6bb88ba96ef5..e2ee0dfeaf05f2bf454497656fbf3aacb5f3dd5a 100644
--- a/content/browser/loader/url_loader_factory_impl.cc
+++ b/content/browser/loader/url_loader_factory_impl.cc
@@ -6,6 +6,7 @@
#include "content/browser/loader/resource_dispatcher_host_impl.h"
#include "content/browser/loader/resource_message_filter.h"
yhirano 2016/11/10 06:42:29 Not needed.
horo 2016/11/10 14:46:33 Done.
+#include "content/browser/loader/resource_requester_info.h"
#include "content/common/resource_request.h"
#include "content/common/url_loader.mojom.h"
#include "content/public/browser/browser_thread.h"
@@ -34,9 +35,10 @@ void DispatchSyncLoadResult(
} // namespace
URLLoaderFactoryImpl::URLLoaderFactoryImpl(
- scoped_refptr<ResourceMessageFilter> resource_message_filter)
- : resource_message_filter_(std::move(resource_message_filter)) {
- DCHECK(resource_message_filter_);
+ std::unique_ptr<ResourceRequesterInfo> requester_info)
+ : requester_info_(std::move(requester_info)) {
+ DCHECK(requester_info_->IsRenderer());
+ DCHECK(requester_info_->filter());
DCHECK_CURRENTLY_ON(BrowserThread::IO);
}
@@ -51,8 +53,7 @@ void URLLoaderFactoryImpl::CreateLoaderAndStart(
const ResourceRequest& url_request,
mojom::URLLoaderClientAssociatedPtrInfo client_ptr_info) {
CreateLoaderAndStart(std::move(request), routing_id, request_id, url_request,
- std::move(client_ptr_info),
- resource_message_filter_.get());
+ std::move(client_ptr_info), requester_info_->clone());
}
void URLLoaderFactoryImpl::SyncLoad(int32_t routing_id,
@@ -60,7 +61,7 @@ void URLLoaderFactoryImpl::SyncLoad(int32_t routing_id,
const ResourceRequest& url_request,
const SyncLoadCallback& callback) {
SyncLoad(routing_id, request_id, url_request, callback,
- resource_message_filter_.get());
+ requester_info_->clone());
}
// static
@@ -70,7 +71,7 @@ void URLLoaderFactoryImpl::CreateLoaderAndStart(
int32_t request_id,
const ResourceRequest& url_request,
mojom::URLLoaderClientAssociatedPtrInfo client_ptr_info,
- ResourceMessageFilter* filter) {
+ std::unique_ptr<ResourceRequesterInfo> requester_info) {
DCHECK_CURRENTLY_ON(BrowserThread::IO);
mojom::URLLoaderClientAssociatedPtr client;
@@ -78,27 +79,30 @@ void URLLoaderFactoryImpl::CreateLoaderAndStart(
ResourceDispatcherHostImpl* rdh = ResourceDispatcherHostImpl::Get();
rdh->OnRequestResourceWithMojo(routing_id, request_id, url_request,
- std::move(request), std::move(client), filter);
+ std::move(request), std::move(client),
+ std::move(requester_info));
}
// static
-void URLLoaderFactoryImpl::SyncLoad(int32_t routing_id,
- int32_t request_id,
- const ResourceRequest& url_request,
- const SyncLoadCallback& callback,
- ResourceMessageFilter* filter) {
+void URLLoaderFactoryImpl::SyncLoad(
+ int32_t routing_id,
+ int32_t request_id,
+ const ResourceRequest& url_request,
+ const SyncLoadCallback& callback,
+ std::unique_ptr<ResourceRequesterInfo> requester_info) {
DCHECK_CURRENTLY_ON(BrowserThread::IO);
ResourceDispatcherHostImpl* rdh = ResourceDispatcherHostImpl::Get();
- rdh->OnSyncLoadWithMojo(routing_id, request_id, url_request, filter,
+ rdh->OnSyncLoadWithMojo(routing_id, request_id, url_request,
+ std::move(requester_info),
base::Bind(&DispatchSyncLoadResult, callback));
}
void URLLoaderFactoryImpl::Create(
- scoped_refptr<ResourceMessageFilter> filter,
+ std::unique_ptr<ResourceRequesterInfo> requester_info,
mojo::InterfaceRequest<mojom::URLLoaderFactory> request) {
mojo::MakeStrongBinding(
- base::WrapUnique(new URLLoaderFactoryImpl(std::move(filter))),
+ base::WrapUnique(new URLLoaderFactoryImpl(std::move(requester_info))),
std::move(request));
}

Powered by Google App Engine
This is Rietveld 408576698