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_controllee_request_handl
er.h" | 5 #include "content/browser/service_worker/service_worker_controllee_request_handl
er.h" |
6 | 6 |
7 #include <memory> | 7 #include <memory> |
8 #include <set> | 8 #include <set> |
9 #include <string> | 9 #include <string> |
10 | 10 |
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
52 | 52 |
53 } // namespace | 53 } // namespace |
54 | 54 |
55 ServiceWorkerControlleeRequestHandler::ServiceWorkerControlleeRequestHandler( | 55 ServiceWorkerControlleeRequestHandler::ServiceWorkerControlleeRequestHandler( |
56 base::WeakPtr<ServiceWorkerContextCore> context, | 56 base::WeakPtr<ServiceWorkerContextCore> context, |
57 base::WeakPtr<ServiceWorkerProviderHost> provider_host, | 57 base::WeakPtr<ServiceWorkerProviderHost> provider_host, |
58 base::WeakPtr<storage::BlobStorageContext> blob_storage_context, | 58 base::WeakPtr<storage::BlobStorageContext> blob_storage_context, |
59 FetchRequestMode request_mode, | 59 FetchRequestMode request_mode, |
60 FetchCredentialsMode credentials_mode, | 60 FetchCredentialsMode credentials_mode, |
61 FetchRedirectMode redirect_mode, | 61 FetchRedirectMode redirect_mode, |
| 62 const std::string& integrity, |
62 ResourceType resource_type, | 63 ResourceType resource_type, |
63 RequestContextType request_context_type, | 64 RequestContextType request_context_type, |
64 RequestContextFrameType frame_type, | 65 RequestContextFrameType frame_type, |
65 scoped_refptr<ResourceRequestBody> body) | 66 scoped_refptr<ResourceRequestBody> body) |
66 : ServiceWorkerRequestHandler(context, | 67 : ServiceWorkerRequestHandler(context, |
67 provider_host, | 68 provider_host, |
68 blob_storage_context, | 69 blob_storage_context, |
69 resource_type), | 70 resource_type), |
70 is_main_resource_load_( | 71 is_main_resource_load_( |
71 ServiceWorkerUtils::IsMainResourceType(resource_type)), | 72 ServiceWorkerUtils::IsMainResourceType(resource_type)), |
72 is_main_frame_load_(resource_type == RESOURCE_TYPE_MAIN_FRAME), | 73 is_main_frame_load_(resource_type == RESOURCE_TYPE_MAIN_FRAME), |
73 request_mode_(request_mode), | 74 request_mode_(request_mode), |
74 credentials_mode_(credentials_mode), | 75 credentials_mode_(credentials_mode), |
75 redirect_mode_(redirect_mode), | 76 redirect_mode_(redirect_mode), |
| 77 integrity_(integrity), |
76 request_context_type_(request_context_type), | 78 request_context_type_(request_context_type), |
77 frame_type_(frame_type), | 79 frame_type_(frame_type), |
78 body_(body), | 80 body_(body), |
79 force_update_started_(false), | 81 force_update_started_(false), |
80 use_network_(false), | 82 use_network_(false), |
81 weak_factory_(this) {} | 83 weak_factory_(this) {} |
82 | 84 |
83 ServiceWorkerControlleeRequestHandler:: | 85 ServiceWorkerControlleeRequestHandler:: |
84 ~ServiceWorkerControlleeRequestHandler() { | 86 ~ServiceWorkerControlleeRequestHandler() { |
85 // Navigation triggers an update to occur shortly after the page and | 87 // Navigation triggers an update to occur shortly after the page and |
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
122 if (is_main_resource_load_) | 124 if (is_main_resource_load_) |
123 use_network_ = false; | 125 use_network_ = false; |
124 return NULL; | 126 return NULL; |
125 } | 127 } |
126 | 128 |
127 // It's for original request (A) or redirect case (B-a or B-b). | 129 // It's for original request (A) or redirect case (B-a or B-b). |
128 std::unique_ptr<ServiceWorkerURLRequestJob> job( | 130 std::unique_ptr<ServiceWorkerURLRequestJob> job( |
129 new ServiceWorkerURLRequestJob( | 131 new ServiceWorkerURLRequestJob( |
130 request, network_delegate, provider_host_->client_uuid(), | 132 request, network_delegate, provider_host_->client_uuid(), |
131 blob_storage_context_, resource_context, request_mode_, | 133 blob_storage_context_, resource_context, request_mode_, |
132 credentials_mode_, redirect_mode_, resource_type_, | 134 credentials_mode_, redirect_mode_, integrity_, resource_type_, |
133 request_context_type_, frame_type_, body_, | 135 request_context_type_, frame_type_, body_, |
134 ServiceWorkerFetchType::FETCH, base::nullopt, this)); | 136 ServiceWorkerFetchType::FETCH, base::nullopt, this)); |
135 url_job_ = base::MakeUnique<ServiceWorkerURLJobWrapper>(job->GetWeakPtr()); | 137 url_job_ = base::MakeUnique<ServiceWorkerURLJobWrapper>(job->GetWeakPtr()); |
136 | 138 |
137 resource_context_ = resource_context; | 139 resource_context_ = resource_context; |
138 | 140 |
139 if (is_main_resource_load_) | 141 if (is_main_resource_load_) |
140 PrepareForMainResource(request->url(), request->first_party_for_cookies()); | 142 PrepareForMainResource(request->url(), request->first_party_for_cookies()); |
141 else | 143 else |
142 PrepareForSubResource(); | 144 PrepareForSubResource(); |
(...skipping 353 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
496 | 498 |
497 void ServiceWorkerControlleeRequestHandler::ClearJob() { | 499 void ServiceWorkerControlleeRequestHandler::ClearJob() { |
498 url_job_.reset(); | 500 url_job_.reset(); |
499 } | 501 } |
500 | 502 |
501 bool ServiceWorkerControlleeRequestHandler::JobWasCanceled() const { | 503 bool ServiceWorkerControlleeRequestHandler::JobWasCanceled() const { |
502 return !url_job_ || url_job_->WasCanceled(); | 504 return !url_job_ || url_job_->WasCanceled(); |
503 } | 505 } |
504 | 506 |
505 } // namespace content | 507 } // namespace content |
OLD | NEW |