Upstream version 9.38.198.0
[platform/framework/web/crosswalk.git] / src / third_party / WebKit / Source / web / WebSocketImpl.cpp
index f2e9509..7780af8 100644 (file)
 #include "public/platform/WebString.h"
 #include "public/platform/WebURL.h"
 #include "public/web/WebDocument.h"
+#include "web/WebSocketChannelClientProxy.h"
 #include "wtf/ArrayBuffer.h"
 #include "wtf/text/CString.h"
 #include "wtf/text/WTFString.h"
 
-using namespace WebCore;
-
 namespace blink {
 
 WebSocketImpl::WebSocketImpl(const WebDocument& document, WebSocketClient* client)
     : m_client(client)
+    , m_channelProxy(WebSocketChannelClientProxy::create(this))
     , m_binaryType(BinaryTypeBlob)
     , m_isClosingOrClosed(false)
     , m_bufferedAmount(0)
@@ -58,9 +58,9 @@ WebSocketImpl::WebSocketImpl(const WebDocument& document, WebSocketClient* clien
 {
     RefPtrWillBeRawPtr<Document> coreDocument = PassRefPtrWillBeRawPtr<Document>(document);
     if (RuntimeEnabledFeatures::experimentalWebSocketEnabled()) {
-        m_private = NewWebSocketChannelImpl::create(coreDocument.get(), this);
+        m_private = NewWebSocketChannelImpl::create(coreDocument.get(), m_channelProxy.get());
     } else {
-        m_private = MainThreadWebSocketChannel::create(coreDocument.get(), this);
+        m_private = MainThreadWebSocketChannel::create(coreDocument.get(), m_channelProxy.get());
     }
 }
 
@@ -110,7 +110,8 @@ bool WebSocketImpl::sendText(const WebString& message)
     if (m_isClosingOrClosed)
         return true;
 
-    return m_private->send(message) == WebSocketChannel::SendSuccess;
+    m_private->send(message);
+    return true;
 }
 
 bool WebSocketImpl::sendArrayBuffer(const WebArrayBuffer& webArrayBuffer)
@@ -126,7 +127,8 @@ bool WebSocketImpl::sendArrayBuffer(const WebArrayBuffer& webArrayBuffer)
     if (m_isClosingOrClosed)
         return true;
 
-    return m_private->send(*PassRefPtr<ArrayBuffer>(webArrayBuffer), 0, webArrayBuffer.byteLength()) == WebSocketChannel::SendSuccess;
+    m_private->send(*PassRefPtr<ArrayBuffer>(webArrayBuffer), 0, webArrayBuffer.byteLength());
+    return true;
 }
 
 unsigned long WebSocketImpl::bufferedAmount() const
@@ -197,7 +199,7 @@ void WebSocketImpl::didStartClosingHandshake()
     m_client->didStartClosingHandshake();
 }
 
-void WebSocketImpl::didClose(ClosingHandshakeCompletionStatus status, unsigned short code, const String& reason)
+void WebSocketImpl::didClose(WebSocketChannelClient::ClosingHandshakeCompletionStatus status, unsigned short code, const String& reason)
 {
     m_isClosingOrClosed = true;
     m_client->didClose(static_cast<WebSocketClient::ClosingHandshakeCompletionStatus>(status), code, WebString(reason));