diff options
Diffstat (limited to 'Source/WebCore/page/EventSource.h')
| -rw-r--r-- | Source/WebCore/page/EventSource.h | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/Source/WebCore/page/EventSource.h b/Source/WebCore/page/EventSource.h index 9e81a2af1..f2d1c1256 100644 --- a/Source/WebCore/page/EventSource.h +++ b/Source/WebCore/page/EventSource.h @@ -51,7 +51,7 @@ class ThreadableLoader; class EventSource final : public RefCounted<EventSource>, public EventTargetWithInlineData, private ThreadableLoaderClient, public ActiveDOMObject { WTF_MAKE_FAST_ALLOCATED; public: - static RefPtr<EventSource> create(ScriptExecutionContext&, const String& url, const Dictionary&, ExceptionCode&); + static PassRefPtr<EventSource> create(ScriptExecutionContext&, const String& url, const Dictionary&, ExceptionCode&); virtual ~EventSource(); static const unsigned long long defaultReconnectDelay; @@ -66,6 +66,10 @@ public: State readyState() const; + DEFINE_ATTRIBUTE_EVENT_LISTENER(open); + DEFINE_ATTRIBUTE_EVENT_LISTENER(message); + DEFINE_ATTRIBUTE_EVENT_LISTENER(error); + void close(); using RefCounted<EventSource>::ref; @@ -87,19 +91,17 @@ private: virtual void didFailAccessControlCheck(const ResourceError&) override; virtual void didFailRedirectCheck() override; - // ActiveDOMObject API. - void stop() override; - const char* activeDOMObjectName() const override; - bool canSuspendForDocumentSuspension() const override; + virtual void stop() override; void connect(); void networkRequestEnded(); void scheduleInitialConnect(); void scheduleReconnect(); + void connectTimerFired(Timer<EventSource>&); void abortConnectionAttempt(); void parseEventStream(); void parseEventStreamLine(unsigned pos, int fieldLength, int lineLength); - Ref<MessageEvent> createMessageEvent(); + PassRefPtr<MessageEvent> createMessageEvent(); URL m_url; bool m_withCredentials; @@ -107,7 +109,7 @@ private: RefPtr<TextResourceDecoder> m_decoder; RefPtr<ThreadableLoader> m_loader; - Timer m_connectTimer; + Timer<EventSource> m_connectTimer; Vector<UChar> m_receiveBuf; bool m_discardTrailingNewline; bool m_requestInFlight; |
