Chromium Code Reviews| Index: content/renderer/service_worker/service_worker_context_client.h |
| diff --git a/content/renderer/service_worker/service_worker_context_client.h b/content/renderer/service_worker/service_worker_context_client.h |
| index f73acbb0fe982c08b97a0d0af9eec142837e6f94..585e1287169b879a90d6d36125decee48523f8f6 100644 |
| --- a/content/renderer/service_worker/service_worker_context_client.h |
| +++ b/content/renderer/service_worker/service_worker_context_client.h |
| @@ -213,10 +213,15 @@ class ServiceWorkerContextClient : public blink::WebServiceWorkerContextClient, |
| void Claim(std::unique_ptr<blink::WebServiceWorkerClientsClaimCallbacks> |
| callbacks) override; |
| void RegisterForeignFetchScopes( |
| + const int event_id, |
| const blink::WebVector<blink::WebURL>& sub_scopes, |
| const blink::WebVector<blink::WebSecurityOrigin>& origins) override; |
| private: |
| + // The key is the unique id of every install event. |
| + using InstallEventMethodsMap = |
| + std::map<int, mojom::ServiceWorkerInstallEventMethodsAssociatedPtr>; |
| + |
| struct WorkerContextData; |
| class NavigationPreloadRequest; |
| @@ -231,6 +236,9 @@ class ServiceWorkerContextClient : public blink::WebServiceWorkerContextClient, |
| const ServiceWorkerVersionAttributes& attrs); |
| // mojom::ServiceWorkerEventDispatcher |
| + void DispatchInstallEvent( |
| + mojom::ServiceWorkerInstallEventMethodsAssociatedPtrInfo client, |
| + const DispatchInstallEventCallback& callback) override; |
| void DispatchActivateEvent( |
| const DispatchActivateEventCallback& callback) override; |
| void DispatchBackgroundFetchAbortEvent( |
| @@ -280,7 +288,6 @@ class ServiceWorkerContextClient : public blink::WebServiceWorkerContextClient, |
| const DispatchPaymentRequestEventCallback& callback) override; |
| void Ping(const PingCallback& callback) override; |
| - void OnInstallEvent(int request_id); |
| void OnNotificationClickEvent( |
| int request_id, |
| const std::string& notification_id, |
| @@ -345,6 +352,10 @@ class ServiceWorkerContextClient : public blink::WebServiceWorkerContextClient, |
| scoped_refptr<mojom::ThreadSafeEmbeddedWorkerInstanceHostAssociatedPtr> |
| instance_host_; |
| + // Maps every install event id with its corresponding |
| + // mojom::ServiceWorkerInstallEventMethodsAssociatedPt. |
| + InstallEventMethodsMap install_methods_map_; |
|
shimazu
2017/04/24 05:00:13
Do you have any concerns to put this in WorkerCont
xiaofengzhang
2017/04/25 06:01:29
Done.
|
| + |
| // Renderer-side object corresponding to WebEmbeddedWorkerInstance. |
| // This is valid from the ctor to workerContextDestroyed. |
| std::unique_ptr<EmbeddedWorkerInstanceClientImpl> embedded_worker_client_; |