| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 "content/browser/service_worker/service_worker_fetch_dispatcher.h" | 5 #include "content/browser/service_worker/service_worker_fetch_dispatcher.h" |
| 6 | 6 |
| 7 #include <string> | 7 #include <string> |
| 8 #include <utility> | 8 #include <utility> |
| 9 | 9 |
| 10 #include "base/bind.h" | 10 #include "base/bind.h" |
| (...skipping 403 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 414 } else { | 414 } else { |
| 415 DCHECK(requester_info->IsRenderer()); | 415 DCHECK(requester_info->IsRenderer()); |
| 416 if (!requester_info->filter()) | 416 if (!requester_info->filter()) |
| 417 return; | 417 return; |
| 418 } | 418 } |
| 419 | 419 |
| 420 DCHECK(!url_loader_factory_); | 420 DCHECK(!url_loader_factory_); |
| 421 mojom::URLLoaderFactoryPtr factory; | 421 mojom::URLLoaderFactoryPtr factory; |
| 422 URLLoaderFactoryImpl::Create( | 422 URLLoaderFactoryImpl::Create( |
| 423 ResourceRequesterInfo::CreateForNavigationPreload(requester_info), | 423 ResourceRequesterInfo::CreateForNavigationPreload(requester_info), |
| 424 mojo::GetProxy(&url_loader_factory_)); | 424 mojo::MakeRequest(&url_loader_factory_)); |
| 425 | 425 |
| 426 preload_handle_ = mojom::FetchEventPreloadHandle::New(); | 426 preload_handle_ = mojom::FetchEventPreloadHandle::New(); |
| 427 | 427 |
| 428 ResourceRequest request; | 428 ResourceRequest request; |
| 429 request.method = original_request->method(); | 429 request.method = original_request->method(); |
| 430 request.url = original_request->url(); | 430 request.url = original_request->url(); |
| 431 request.request_initiator = original_request->initiator(); | 431 request.request_initiator = original_request->initiator(); |
| 432 request.referrer = GURL(original_request->referrer()); | 432 request.referrer = GURL(original_request->referrer()); |
| 433 request.referrer_policy = original_info->GetReferrerPolicy(); | 433 request.referrer_policy = original_info->GetReferrerPolicy(); |
| 434 request.visibility_state = original_info->GetVisibilityState(); | 434 request.visibility_state = original_info->GetVisibilityState(); |
| (...skipping 12 matching lines...) Expand all Loading... |
| 447 version_->navigation_preload_state().header)); | 447 version_->navigation_preload_state().header)); |
| 448 request.headers = "Service-Worker-Navigation-Preload: " + | 448 request.headers = "Service-Worker-Navigation-Preload: " + |
| 449 version_->navigation_preload_state().header; | 449 version_->navigation_preload_state().header; |
| 450 | 450 |
| 451 const int request_id = ResourceDispatcherHostImpl::Get()->MakeRequestID(); | 451 const int request_id = ResourceDispatcherHostImpl::Get()->MakeRequestID(); |
| 452 DCHECK_LT(request_id, -1); | 452 DCHECK_LT(request_id, -1); |
| 453 | 453 |
| 454 preload_handle_ = mojom::FetchEventPreloadHandle::New(); | 454 preload_handle_ = mojom::FetchEventPreloadHandle::New(); |
| 455 mojom::URLLoaderClientPtr url_loader_client_ptr; | 455 mojom::URLLoaderClientPtr url_loader_client_ptr; |
| 456 preload_handle_->url_loader_client_request = | 456 preload_handle_->url_loader_client_request = |
| 457 mojo::GetProxy(&url_loader_client_ptr); | 457 mojo::MakeRequest(&url_loader_client_ptr); |
| 458 auto url_loader_client = base::MakeUnique<DelegatingURLLoaderClient>( | 458 auto url_loader_client = base::MakeUnique<DelegatingURLLoaderClient>( |
| 459 std::move(url_loader_client_ptr)); | 459 std::move(url_loader_client_ptr)); |
| 460 mojom::URLLoaderClientAssociatedPtrInfo url_loader_client_associated_ptr_info; | 460 mojom::URLLoaderClientAssociatedPtrInfo url_loader_client_associated_ptr_info; |
| 461 url_loader_client->Bind(&url_loader_client_associated_ptr_info, | 461 url_loader_client->Bind(&url_loader_client_associated_ptr_info, |
| 462 url_loader_factory_.associated_group()); | 462 url_loader_factory_.associated_group()); |
| 463 mojom::URLLoaderAssociatedPtr url_loader_associated_ptr; | 463 mojom::URLLoaderAssociatedPtr url_loader_associated_ptr; |
| 464 | 464 |
| 465 url_loader_factory_->CreateLoaderAndStart( | 465 url_loader_factory_->CreateLoaderAndStart( |
| 466 mojo::GetProxy(&url_loader_associated_ptr, | 466 mojo::MakeRequest(&url_loader_associated_ptr, |
| 467 url_loader_factory_.associated_group()), | 467 url_loader_factory_.associated_group()), |
| 468 original_info->GetRouteID(), request_id, request, | 468 original_info->GetRouteID(), request_id, request, |
| 469 std::move(url_loader_client_associated_ptr_info)); | 469 std::move(url_loader_client_associated_ptr_info)); |
| 470 | 470 |
| 471 std::unique_ptr<DelegatingURLLoader> url_loader( | 471 std::unique_ptr<DelegatingURLLoader> url_loader( |
| 472 new DelegatingURLLoader(std::move(url_loader_associated_ptr))); | 472 new DelegatingURLLoader(std::move(url_loader_associated_ptr))); |
| 473 preload_handle_->url_loader = url_loader->CreateInterfacePtrAndBind(); | 473 preload_handle_->url_loader = url_loader->CreateInterfacePtrAndBind(); |
| 474 url_loader_ = std::move(url_loader); | 474 url_loader_ = std::move(url_loader); |
| 475 url_loader_client_ = std::move(url_loader_client); | 475 url_loader_client_ = std::move(url_loader_client); |
| 476 } | 476 } |
| 477 | 477 |
| 478 ServiceWorkerMetrics::EventType ServiceWorkerFetchDispatcher::GetEventType() | 478 ServiceWorkerMetrics::EventType ServiceWorkerFetchDispatcher::GetEventType() |
| 479 const { | 479 const { |
| 480 if (request_->fetch_type == ServiceWorkerFetchType::FOREIGN_FETCH) | 480 if (request_->fetch_type == ServiceWorkerFetchType::FOREIGN_FETCH) |
| 481 return ServiceWorkerMetrics::EventType::FOREIGN_FETCH; | 481 return ServiceWorkerMetrics::EventType::FOREIGN_FETCH; |
| 482 return ResourceTypeToEventType(resource_type_); | 482 return ResourceTypeToEventType(resource_type_); |
| 483 } | 483 } |
| 484 | 484 |
| 485 } // namespace content | 485 } // namespace content |
| OLD | NEW |