WebSocket: Add binaryType attribute
[WebKit-https.git] / Source / WebCore / websockets / ThreadableWebSocketChannel.h
index 05b3767..565b1ef 100644 (file)
@@ -43,14 +43,19 @@ class KURL;
 class ScriptExecutionContext;
 class WebSocketChannelClient;
 
-class ThreadableWebSocketChannel : public Noncopyable {
+class ThreadableWebSocketChannel {
+    WTF_MAKE_NONCOPYABLE(ThreadableWebSocketChannel);
 public:
-    static PassRefPtr<ThreadableWebSocketChannel> create(ScriptExecutionContext*, WebSocketChannelClient*, const KURL&, const String& protocol);
+    ThreadableWebSocketChannel() { }
+    static PassRefPtr<ThreadableWebSocketChannel> create(ScriptExecutionContext*, WebSocketChannelClient*);
 
-    virtual void connect() = 0;
+    virtual bool useHixie76Protocol() = 0;
+    virtual void connect(const KURL&, const String& protocol) = 0;
     virtual bool send(const String& message) = 0;
     virtual unsigned long bufferedAmount() const = 0;
     virtual void close() = 0;
+    // Log the reason text and close the connection. Will call didClose().
+    virtual void fail(const String& reason) = 0;
     virtual void disconnect() = 0; // Will suppress didClose().
 
     virtual void suspend() = 0;