OLD | NEW |
1 /* | 1 /* |
2 * Copyright (c) 2011 Google Inc. All rights reserved. | 2 * Copyright (c) 2011 Google Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
6 * met: | 6 * met: |
7 * | 7 * |
8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
(...skipping 15 matching lines...) Expand all Loading... |
26 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | 26 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
27 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | 27 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
28 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 28 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
29 */ | 29 */ |
30 | 30 |
31 #ifndef WorkerScriptDebugServer_h | 31 #ifndef WorkerScriptDebugServer_h |
32 #define WorkerScriptDebugServer_h | 32 #define WorkerScriptDebugServer_h |
33 | 33 |
34 #include "core/inspector/PerIsolateDebuggerClient.h" | 34 #include "core/inspector/PerIsolateDebuggerClient.h" |
35 #include "platform/heap/Handle.h" | 35 #include "platform/heap/Handle.h" |
| 36 #include "public/platform/WebThread.h" |
36 #include "wtf/Forward.h" | 37 #include "wtf/Forward.h" |
37 | 38 |
38 #include <v8.h> | 39 #include <v8.h> |
39 | 40 |
40 namespace blink { | 41 namespace blink { |
41 | 42 |
42 class WorkerGlobalScope; | 43 class WorkerGlobalScope; |
43 | 44 |
44 class WorkerScriptDebugServer final : public NoBaseWillBeGarbageCollectedFinaliz
ed<WorkerScriptDebugServer>, public PerIsolateDebuggerClient { | 45 class WorkerScriptDebugServer final : public NoBaseWillBeGarbageCollectedFinaliz
ed<WorkerScriptDebugServer>, public PerIsolateDebuggerClient { |
45 WTF_MAKE_NONCOPYABLE(WorkerScriptDebugServer); | 46 WTF_MAKE_NONCOPYABLE(WorkerScriptDebugServer); |
46 WILL_BE_USING_GARBAGE_COLLECTED_MIXIN(WorkerScriptDebugServer); | 47 WILL_BE_USING_GARBAGE_COLLECTED_MIXIN(WorkerScriptDebugServer); |
47 public: | 48 public: |
48 static PassOwnPtrWillBeRawPtr<WorkerScriptDebugServer> create(WorkerGlobalSc
ope* workerGlobalScope) | 49 static PassOwnPtrWillBeRawPtr<WorkerScriptDebugServer> create(WebThread::Tas
kObserver* taskObserver, WorkerGlobalScope* workerGlobalScope) |
49 { | 50 { |
50 return adoptPtrWillBeNoop(new WorkerScriptDebugServer(workerGlobalScope)
); | 51 return adoptPtrWillBeNoop(new WorkerScriptDebugServer(taskObserver, work
erGlobalScope)); |
51 } | 52 } |
52 | 53 |
53 ~WorkerScriptDebugServer() override; | 54 ~WorkerScriptDebugServer() override; |
54 | 55 |
55 static void setContextDebugData(v8::Local<v8::Context>); | 56 static void setContextDebugData(v8::Local<v8::Context>); |
56 void addListener(ScriptDebugListener*); | 57 void addListener(ScriptDebugListener*); |
57 void removeListener(ScriptDebugListener*); | 58 void removeListener(ScriptDebugListener*); |
58 | 59 |
59 DECLARE_VIRTUAL_TRACE(); | 60 DECLARE_VIRTUAL_TRACE(); |
60 | 61 |
61 private: | 62 private: |
62 explicit WorkerScriptDebugServer(WorkerGlobalScope*); | 63 explicit WorkerScriptDebugServer(WebThread::TaskObserver*, WorkerGlobalScope
*); |
63 | 64 |
64 ScriptDebugListener* getDebugListenerForContext(v8::Local<v8::Context>); | 65 ScriptDebugListener* getDebugListenerForContext(v8::Local<v8::Context>); |
65 void runMessageLoopOnPause(v8::Local<v8::Context>); | 66 void runMessageLoopOnPause(v8::Local<v8::Context>); |
66 void quitMessageLoopOnPause(); | 67 void quitMessageLoopOnPause(); |
67 | 68 |
68 ScriptDebugListener* m_listener; | 69 ScriptDebugListener* m_listener; |
| 70 WebThread::TaskObserver* m_taskObserver; |
69 RawPtrWillBeMember<WorkerGlobalScope> m_workerGlobalScope; | 71 RawPtrWillBeMember<WorkerGlobalScope> m_workerGlobalScope; |
70 }; | 72 }; |
71 | 73 |
72 } // namespace blink | 74 } // namespace blink |
73 | 75 |
74 #endif // WorkerScriptDebugServer_h | 76 #endif // WorkerScriptDebugServer_h |
OLD | NEW |