summaryrefslogtreecommitdiffstats
path: root/src/3rdparty/webkit/WebCore/workers/WorkerContext.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/3rdparty/webkit/WebCore/workers/WorkerContext.h')
-rw-r--r--src/3rdparty/webkit/WebCore/workers/WorkerContext.h23
1 files changed, 7 insertions, 16 deletions
diff --git a/src/3rdparty/webkit/WebCore/workers/WorkerContext.h b/src/3rdparty/webkit/WebCore/workers/WorkerContext.h
index 16f43fd55..266553a9e 100644
--- a/src/3rdparty/webkit/WebCore/workers/WorkerContext.h
+++ b/src/3rdparty/webkit/WebCore/workers/WorkerContext.h
@@ -48,17 +48,11 @@ namespace WebCore {
class WorkerContext : public RefCounted<WorkerContext>, public ScriptExecutionContext, public EventTarget {
public:
- static PassRefPtr<WorkerContext> create(const KURL& url, const String& userAgent, WorkerThread* thread)
- {
- return adoptRef(new WorkerContext(url, userAgent, thread));
- }
virtual ~WorkerContext();
virtual bool isWorkerContext() const { return true; }
- virtual WorkerContext* toWorkerContext() { return this; }
-
virtual ScriptExecutionContext* scriptExecutionContext() const;
const KURL& url() const { return m_url; }
@@ -73,7 +67,7 @@ namespace WebCore {
bool hasPendingActivity() const;
- virtual void reportException(const String& errorMessage, int lineNumber, const String& sourceURL);
+ virtual void reportException(const String& errorMessage, int lineNumber, const String& sourceURL) = 0;
virtual void addMessage(MessageDestination, MessageSource, MessageType, MessageLevel, const String& message, unsigned lineNumber, const String& sourceURL);
virtual void resourceRetrievedByXMLHttpRequest(unsigned long identifier, const ScriptString& sourceString);
virtual void scriptImported(unsigned long identifier, const String& sourceString);
@@ -84,17 +78,13 @@ namespace WebCore {
WorkerContext* self() { return this; }
WorkerLocation* location() const;
void close();
+ void setOnerror(PassRefPtr<EventListener> eventListener) { m_onerrorListener = eventListener; }
+ EventListener* onerror() const { return m_onerrorListener.get(); }
// WorkerUtils
void importScripts(const Vector<String>& urls, const String& callerURL, int callerLine, ExceptionCode&);
WorkerNavigator* navigator() const;
- // DedicatedWorkerGlobalScope
- void postMessage(const String&, ExceptionCode&);
- void postMessage(const String&, MessagePort*, ExceptionCode&);
- void setOnmessage(PassRefPtr<EventListener> eventListener) { m_onmessageListener = eventListener; }
- EventListener* onmessage() const { return m_onmessageListener.get(); }
-
// Timers
int setTimeout(ScheduledAction*, int timeout);
void clearTimeout(int timeoutId);
@@ -110,7 +100,6 @@ namespace WebCore {
typedef HashMap<AtomicString, ListenerVector> EventListenersMap;
EventListenersMap& eventListeners() { return m_eventListeners; }
- void dispatchMessage(const String&, PassRefPtr<MessagePort>);
// These methods are used for GC marking. See JSWorkerContext::mark() in
// JSWorkerContextCustom.cpp.
@@ -120,9 +109,11 @@ namespace WebCore {
using RefCounted<WorkerContext>::ref;
using RefCounted<WorkerContext>::deref;
- private:
+ protected:
WorkerContext(const KURL&, const String&, WorkerThread*);
+ bool isClosing() { return m_closing; }
+ private:
virtual void refScriptExecutionContext() { ref(); }
virtual void derefScriptExecutionContext() { deref(); }
virtual void refEventTarget() { ref(); }
@@ -140,7 +131,7 @@ namespace WebCore {
OwnPtr<WorkerScriptController> m_script;
WorkerThread* m_thread;
- RefPtr<EventListener> m_onmessageListener;
+ RefPtr<EventListener> m_onerrorListener;
EventListenersMap m_eventListeners;
bool m_closing;