Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(663)

Unified Diff: content/renderer/service_worker/service_worker_context_client.h

Issue 2746783002: [ServiceWorker] Mojofy InstallEvent of Service Worker (Closed)
Patch Set: Rebase Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
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_;

Powered by Google App Engine
This is Rietveld 408576698