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_url_request_job.h" | 5 #include "content/browser/service_worker/service_worker_url_request_job.h" |
6 | 6 |
7 #include <stddef.h> | 7 #include <stddef.h> |
8 #include <stdint.h> | 8 #include <stdint.h> |
9 | 9 |
10 #include <map> | 10 #include <map> |
(...skipping 307 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
318 | 318 |
319 ServiceWorkerURLRequestJob::ServiceWorkerURLRequestJob( | 319 ServiceWorkerURLRequestJob::ServiceWorkerURLRequestJob( |
320 net::URLRequest* request, | 320 net::URLRequest* request, |
321 net::NetworkDelegate* network_delegate, | 321 net::NetworkDelegate* network_delegate, |
322 const std::string& client_id, | 322 const std::string& client_id, |
323 base::WeakPtr<storage::BlobStorageContext> blob_storage_context, | 323 base::WeakPtr<storage::BlobStorageContext> blob_storage_context, |
324 const ResourceContext* resource_context, | 324 const ResourceContext* resource_context, |
325 FetchRequestMode request_mode, | 325 FetchRequestMode request_mode, |
326 FetchCredentialsMode credentials_mode, | 326 FetchCredentialsMode credentials_mode, |
327 FetchRedirectMode redirect_mode, | 327 FetchRedirectMode redirect_mode, |
| 328 const std::string& integrity, |
328 ResourceType resource_type, | 329 ResourceType resource_type, |
329 RequestContextType request_context_type, | 330 RequestContextType request_context_type, |
330 RequestContextFrameType frame_type, | 331 RequestContextFrameType frame_type, |
331 scoped_refptr<ResourceRequestBody> body, | 332 scoped_refptr<ResourceRequestBody> body, |
332 ServiceWorkerFetchType fetch_type, | 333 ServiceWorkerFetchType fetch_type, |
333 const base::Optional<base::TimeDelta>& timeout, | 334 const base::Optional<base::TimeDelta>& timeout, |
334 Delegate* delegate) | 335 Delegate* delegate) |
335 : net::URLRequestJob(request, network_delegate), | 336 : net::URLRequestJob(request, network_delegate), |
336 delegate_(delegate), | 337 delegate_(delegate), |
337 response_type_(NOT_DETERMINED), | 338 response_type_(NOT_DETERMINED), |
338 is_started_(false), | 339 is_started_(false), |
339 service_worker_response_type_( | 340 service_worker_response_type_( |
340 blink::kWebServiceWorkerResponseTypeDefault), | 341 blink::kWebServiceWorkerResponseTypeDefault), |
341 client_id_(client_id), | 342 client_id_(client_id), |
342 blob_storage_context_(blob_storage_context), | 343 blob_storage_context_(blob_storage_context), |
343 resource_context_(resource_context), | 344 resource_context_(resource_context), |
344 request_mode_(request_mode), | 345 request_mode_(request_mode), |
345 credentials_mode_(credentials_mode), | 346 credentials_mode_(credentials_mode), |
346 redirect_mode_(redirect_mode), | 347 redirect_mode_(redirect_mode), |
| 348 integrity_(integrity), |
347 resource_type_(resource_type), | 349 resource_type_(resource_type), |
348 request_context_type_(request_context_type), | 350 request_context_type_(request_context_type), |
349 frame_type_(frame_type), | 351 frame_type_(frame_type), |
350 fall_back_required_(false), | 352 fall_back_required_(false), |
351 body_(body), | 353 body_(body), |
352 fetch_type_(fetch_type), | 354 fetch_type_(fetch_type), |
353 timeout_(timeout), | 355 timeout_(timeout), |
354 weak_factory_(this) { | 356 weak_factory_(this) { |
355 DCHECK(delegate_) << "ServiceWorkerURLRequestJob requires a delegate"; | 357 DCHECK(delegate_) << "ServiceWorkerURLRequestJob requires a delegate"; |
356 } | 358 } |
(...skipping 217 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
574 const net::HttpRequestHeaders& headers = request_->extra_request_headers(); | 576 const net::HttpRequestHeaders& headers = request_->extra_request_headers(); |
575 for (net::HttpRequestHeaders::Iterator it(headers); it.GetNext();) { | 577 for (net::HttpRequestHeaders::Iterator it(headers); it.GetNext();) { |
576 if (ServiceWorkerContext::IsExcludedHeaderNameForFetchEvent(it.name())) | 578 if (ServiceWorkerContext::IsExcludedHeaderNameForFetchEvent(it.name())) |
577 continue; | 579 continue; |
578 request->headers[it.name()] = it.value(); | 580 request->headers[it.name()] = it.value(); |
579 } | 581 } |
580 request->blob_uuid = blob_uuid; | 582 request->blob_uuid = blob_uuid; |
581 request->blob_size = blob_size; | 583 request->blob_size = blob_size; |
582 request->credentials_mode = credentials_mode_; | 584 request->credentials_mode = credentials_mode_; |
583 request->redirect_mode = redirect_mode_; | 585 request->redirect_mode = redirect_mode_; |
| 586 request->integrity = integrity_; |
584 request->client_id = client_id_; | 587 request->client_id = client_id_; |
585 const ResourceRequestInfo* info = ResourceRequestInfo::ForRequest(request_); | 588 const ResourceRequestInfo* info = ResourceRequestInfo::ForRequest(request_); |
586 if (info) { | 589 if (info) { |
587 request->is_reload = ui::PageTransitionCoreTypeIs( | 590 request->is_reload = ui::PageTransitionCoreTypeIs( |
588 info->GetPageTransition(), ui::PAGE_TRANSITION_RELOAD); | 591 info->GetPageTransition(), ui::PAGE_TRANSITION_RELOAD); |
589 request->referrer = | 592 request->referrer = |
590 Referrer(GURL(request_->referrer()), info->GetReferrerPolicy()); | 593 Referrer(GURL(request_->referrer()), info->GetReferrerPolicy()); |
591 } else { | 594 } else { |
592 CHECK( | 595 CHECK( |
593 request_->referrer_policy() == | 596 request_->referrer_policy() == |
(...skipping 407 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1001 weak_factory_.GetWeakPtr())); | 1004 weak_factory_.GetWeakPtr())); |
1002 } | 1005 } |
1003 fetch_dispatcher_->Run(); | 1006 fetch_dispatcher_->Run(); |
1004 } | 1007 } |
1005 | 1008 |
1006 void ServiceWorkerURLRequestJob::OnNavigationPreloadResponse() { | 1009 void ServiceWorkerURLRequestJob::OnNavigationPreloadResponse() { |
1007 nav_preload_metrics_->ReportNavigationPreloadFinished(); | 1010 nav_preload_metrics_->ReportNavigationPreloadFinished(); |
1008 } | 1011 } |
1009 | 1012 |
1010 } // namespace content | 1013 } // namespace content |
OLD | NEW |