| Index: extensions/renderer/dispatcher.h
|
| diff --git a/extensions/renderer/dispatcher.h b/extensions/renderer/dispatcher.h
|
| index 37ab0a312dcdcbdd37f4d1168caa776ac67c5f39..451bb5e821c8ecb79fcaed770cb774aca098d3bf 100644
|
| --- a/extensions/renderer/dispatcher.h
|
| +++ b/extensions/renderer/dispatcher.h
|
| @@ -83,6 +83,9 @@ class Dispatcher : public content::RenderProcessObserver,
|
|
|
| RequestSender* request_sender() { return request_sender_.get(); }
|
|
|
| + // Thread safe.
|
| + static void InstallV8ExtensionForServiceWorkers();
|
| +
|
| const std::string& webview_partition_id() { return webview_partition_id_; }
|
|
|
| void OnRenderFrameCreated(content::RenderFrame* render_frame);
|
| @@ -94,9 +97,11 @@ class Dispatcher : public content::RenderProcessObserver,
|
| int extension_group,
|
| int world_id);
|
|
|
| - // Runs on a different thread and should not use any member variables.
|
| - static void DidInitializeServiceWorkerContextOnWorkerThread(
|
| + // Runs on a different thread and should only use thread safe member
|
| + // variables.
|
| + void DidInitializeServiceWorkerContextOnWorkerThread(
|
| v8::Local<v8::Context> v8_context,
|
| + int embedded_worker_id,
|
| const GURL& url);
|
|
|
| void WillReleaseScriptContext(blink::WebLocalFrame* frame,
|
| @@ -106,6 +111,7 @@ class Dispatcher : public content::RenderProcessObserver,
|
| // Runs on a different thread and should not use any member variables.
|
| static void WillDestroyServiceWorkerContextOnWorkerThread(
|
| v8::Local<v8::Context> v8_context,
|
| + int embedded_worker_id,
|
| const GURL& url);
|
|
|
| // This method is not allowed to run JavaScript code in the frame.
|
| @@ -223,7 +229,9 @@ class Dispatcher : public content::RenderProcessObserver,
|
| void RegisterBinding(const std::string& api_name, ScriptContext* context);
|
|
|
| void RegisterNativeHandlers(ModuleSystem* module_system,
|
| - ScriptContext* context);
|
| + ScriptContext* context,
|
| + RequestSender* request_sender,
|
| + V8SchemaRegistry* v8_schema_registry);
|
|
|
| // Determines if a ScriptContext can connect to any externally_connectable-
|
| // enabled extension.
|
| @@ -241,11 +249,12 @@ class Dispatcher : public content::RenderProcessObserver,
|
|
|
| // Gets |field| from |object| or creates it as an empty object if it doesn't
|
| // exist.
|
| - v8::Local<v8::Object> GetOrCreateObject(const v8::Local<v8::Object>& object,
|
| - const std::string& field,
|
| - v8::Isolate* isolate);
|
| + static v8::Local<v8::Object> GetOrCreateObject(
|
| + const v8::Local<v8::Object>& object,
|
| + const std::string& field,
|
| + v8::Isolate* isolate);
|
|
|
| - v8::Local<v8::Object> GetOrCreateBindObjectIfAvailable(
|
| + static v8::Local<v8::Object> GetOrCreateBindObjectIfAvailable(
|
| const std::string& api_name,
|
| std::string* bind_name,
|
| ScriptContext* context);
|
|
|