Chromium Code Reviews| Index: public/platform/WebMessagePortChannelClient.h |
| diff --git a/public/platform/WebMessagePortChannelClient.h b/public/platform/WebMessagePortChannelClient.h |
| index 9389338bc37d6c01d478ca50332773e55574cf69..1728c4bff825e50bcced74ff46f1f88c1363b92f 100644 |
| --- a/public/platform/WebMessagePortChannelClient.h |
| +++ b/public/platform/WebMessagePortChannelClient.h |
| @@ -31,10 +31,17 @@ |
| #ifndef WebMessagePortChannelClient_h |
| #define WebMessagePortChannelClient_h |
| +namespace v8 { |
| +class Context; |
| +template<typename T> class Handle; |
| +class Isolate; |
| +} |
| + |
| namespace blink { |
| // Provides an interface for users of WebMessagePortChannel to be notified |
| -// when messages are available. |
| +// when messages are available. This also gives users of WebMessagePortChannel |
| +// access to the V8 Context this message port lives in. |
| class WebMessagePortChannelClient { |
| public: |
| // Alerts that new messages have arrived, which are retrieved by calling |
| @@ -42,6 +49,18 @@ public: |
| // on any thread. |
| virtual void messageAvailable() = 0; |
| + // Returns the V8 isolate this message port lives in. |
| + // Do not rely on this API, it is only exposed so content code can convert |
| + // messages to base::Value, and will be removed when this conversion can be |
| + // integrated into blink itself. |
| + virtual v8::Isolate* scriptIsolate() = 0; |
| + |
| + // Returns the V8 context this message port lives in. |
|
haraken
2015/02/24 10:35:33
As jochen pointed out, using a wrong context is a
|
| + // Do not rely on this API, it is only exposed so content code can convert |
| + // messages to base::Value, and will be removed when this conversion can be |
| + // integrated into blink itself. |
| + virtual v8::Handle<v8::Context> scriptContext() = 0; |
| + |
| protected: |
| ~WebMessagePortChannelClient() { } |
| }; |