| Index: content/browser/service_worker/service_worker_controllee_request_handler.h
|
| diff --git a/content/browser/service_worker/service_worker_controllee_request_handler.h b/content/browser/service_worker/service_worker_controllee_request_handler.h
|
| index a6e48b24727ebafc74bf087e31303100007589e0..3e8d9a2d8ca138d2ac1dc028bb4748aa8d0c683c 100644
|
| --- a/content/browser/service_worker/service_worker_controllee_request_handler.h
|
| +++ b/content/browser/service_worker/service_worker_controllee_request_handler.h
|
| @@ -12,6 +12,7 @@
|
| #include "base/memory/ref_counted.h"
|
| #include "base/memory/weak_ptr.h"
|
| #include "base/time/time.h"
|
| +#include "content/browser/service_worker/service_worker_controllee_url_loader_factory.h"
|
| #include "content/browser/service_worker/service_worker_request_handler.h"
|
| #include "content/browser/service_worker/service_worker_url_request_job.h"
|
| #include "content/common/service_worker/service_worker_types.h"
|
| @@ -28,6 +29,7 @@ class URLRequest;
|
|
|
| namespace content {
|
|
|
| +class JobWrapper;
|
| class ResourceRequestBodyImpl;
|
| class ServiceWorkerRegistration;
|
| class ServiceWorkerVersion;
|
| @@ -36,7 +38,8 @@ class ServiceWorkerVersion;
|
| // controlled documents.
|
| class CONTENT_EXPORT ServiceWorkerControlleeRequestHandler
|
| : public ServiceWorkerRequestHandler,
|
| - public ServiceWorkerURLRequestJob::Delegate {
|
| + public ServiceWorkerURLRequestJob::Delegate,
|
| + public ServiceWorkerControlleeURLLoaderFactory::Delegate {
|
| public:
|
| ServiceWorkerControlleeRequestHandler(
|
| base::WeakPtr<ServiceWorkerContextCore> context,
|
| @@ -57,13 +60,19 @@ class CONTENT_EXPORT ServiceWorkerControlleeRequestHandler
|
| net::NetworkDelegate* network_delegate,
|
| ResourceContext* resource_context) override;
|
|
|
| + mojom::URLLoaderFactoryPtrInfo MaybeCreateURLLoader(
|
| + const ResourceRequest& resource_request,
|
| + ResourceContext* resource_context,
|
| + std::unique_ptr<ServiceWorkerRequestHandler> request_handler) override;
|
| +
|
| private:
|
| FRIEND_TEST_ALL_PREFIXES(ServiceWorkerControlleeRequestHandlerTest,
|
| ActivateWaitingVersion);
|
| typedef ServiceWorkerControlleeRequestHandler self;
|
|
|
| // For main resource case.
|
| - void PrepareForMainResource(const net::URLRequest* request);
|
| + void PrepareForMainResource(const GURL& url,
|
| + const GURL& first_party_for_cookies);
|
| void DidLookupRegistrationForMainResource(
|
| ServiceWorkerStatusCode status,
|
| scoped_refptr<ServiceWorkerRegistration> registration);
|
| @@ -101,7 +110,7 @@ class CONTENT_EXPORT ServiceWorkerControlleeRequestHandler
|
|
|
| const bool is_main_resource_load_;
|
| const bool is_main_frame_load_;
|
| - base::WeakPtr<ServiceWorkerURLRequestJob> job_;
|
| + std::unique_ptr<JobWrapper> job_;
|
| FetchRequestMode request_mode_;
|
| FetchCredentialsMode credentials_mode_;
|
| FetchRedirectMode redirect_mode_;
|
|
|