OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2008, 2010 Apple Inc. All Rights Reserved. | 2 * Copyright (C) 2008, 2010 Apple 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 | 5 * modification, are permitted provided that the following conditions |
6 * are met: | 6 * are met: |
7 * 1. Redistributions of source code must retain the above copyright | 7 * 1. Redistributions of source code must retain the above copyright |
8 * notice, this list of conditions and the following disclaimer. | 8 * notice, this list of conditions and the following disclaimer. |
9 * 2. Redistributions in binary form must reproduce the above copyright | 9 * 2. Redistributions in binary form must reproduce the above copyright |
10 * notice, this list of conditions and the following disclaimer in the | 10 * notice, this list of conditions and the following disclaimer in the |
(...skipping 28 matching lines...) Expand all Loading... |
39 #include "wtf/RefPtr.h" | 39 #include "wtf/RefPtr.h" |
40 #include "wtf/text/AtomicStringHash.h" | 40 #include "wtf/text/AtomicStringHash.h" |
41 | 41 |
42 namespace WebCore { | 42 namespace WebCore { |
43 | 43 |
44 class ExceptionState; | 44 class ExceptionState; |
45 class ExecutionContext; | 45 class ExecutionContext; |
46 class WorkerGlobalScopeProxy; | 46 class WorkerGlobalScopeProxy; |
47 class WorkerScriptLoader; | 47 class WorkerScriptLoader; |
48 | 48 |
49 class Worker : public AbstractWorker, public ScriptWrappable, private WorkerScri
ptLoaderClient { | 49 class Worker FINAL : public AbstractWorker, public ScriptWrappable, private Work
erScriptLoaderClient { |
50 public: | 50 public: |
51 static PassRefPtr<Worker> create(ExecutionContext*, const String& url, Excep
tionState&); | 51 static PassRefPtr<Worker> create(ExecutionContext*, const String& url, Excep
tionState&); |
52 virtual ~Worker(); | 52 virtual ~Worker(); |
53 | 53 |
54 virtual const AtomicString& interfaceName() const OVERRIDE; | 54 virtual const AtomicString& interfaceName() const OVERRIDE; |
55 | 55 |
56 void postMessage(PassRefPtr<SerializedScriptValue> message, const MessagePor
tArray*, ExceptionState&); | 56 void postMessage(PassRefPtr<SerializedScriptValue> message, const MessagePor
tArray*, ExceptionState&); |
57 | 57 |
58 void terminate(); | 58 void terminate(); |
59 | 59 |
60 virtual void stop() OVERRIDE; | 60 virtual void stop() OVERRIDE; |
61 virtual bool hasPendingActivity() const OVERRIDE; | 61 virtual bool hasPendingActivity() const OVERRIDE; |
62 | 62 |
63 DEFINE_ATTRIBUTE_EVENT_LISTENER(message); | 63 DEFINE_ATTRIBUTE_EVENT_LISTENER(message); |
64 | 64 |
65 private: | 65 private: |
66 explicit Worker(ExecutionContext*); | 66 explicit Worker(ExecutionContext*); |
67 | 67 |
68 // WorkerScriptLoaderClient callbacks | 68 // WorkerScriptLoaderClient callbacks |
69 virtual void didReceiveResponse(unsigned long identifier, const ResourceResp
onse&) OVERRIDE; | 69 virtual void didReceiveResponse(unsigned long identifier, const ResourceResp
onse&) OVERRIDE; |
70 virtual void notifyFinished() OVERRIDE; | 70 virtual void notifyFinished() OVERRIDE; |
71 | 71 |
72 RefPtr<WorkerScriptLoader> m_scriptLoader; | 72 RefPtr<WorkerScriptLoader> m_scriptLoader; |
73 WorkerGlobalScopeProxy* m_contextProxy; // The proxy outlives the worker to
perform thread shutdown. | 73 WorkerGlobalScopeProxy* m_contextProxy; // The proxy outlives the worker to
perform thread shutdown. |
74 }; | 74 }; |
75 | 75 |
76 } // namespace WebCore | 76 } // namespace WebCore |
77 | 77 |
78 #endif // Worker_h | 78 #endif // Worker_h |
OLD | NEW |