OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2011, 2012 Google Inc. All rights reserved. | 2 * Copyright (C) 2011, 2012 Google 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 are | 5 * modification, are permitted provided that the following conditions are |
6 * met: | 6 * met: |
7 * | 7 * |
8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
(...skipping 24 matching lines...) Expand all Loading... |
35 #include "modules/websockets/DocumentWebSocketChannel.h" | 35 #include "modules/websockets/DocumentWebSocketChannel.h" |
36 #include "modules/websockets/WebSocketChannel.h" | 36 #include "modules/websockets/WebSocketChannel.h" |
37 #include "platform/v8_inspector/public/ConsoleTypes.h" | 37 #include "platform/v8_inspector/public/ConsoleTypes.h" |
38 #include "public/platform/WebString.h" | 38 #include "public/platform/WebString.h" |
39 #include "public/platform/WebURL.h" | 39 #include "public/platform/WebURL.h" |
40 #include "public/web/WebArrayBuffer.h" | 40 #include "public/web/WebArrayBuffer.h" |
41 #include "public/web/WebDocument.h" | 41 #include "public/web/WebDocument.h" |
42 #include "web/WebPepperSocketChannelClientProxy.h" | 42 #include "web/WebPepperSocketChannelClientProxy.h" |
43 #include "wtf/text/CString.h" | 43 #include "wtf/text/CString.h" |
44 #include "wtf/text/WTFString.h" | 44 #include "wtf/text/WTFString.h" |
45 #include <memory> | |
46 | 45 |
47 namespace blink { | 46 namespace blink { |
48 | 47 |
49 WebPepperSocketImpl::WebPepperSocketImpl(const WebDocument& document, WebPepperS
ocketClient* client) | 48 WebPepperSocketImpl::WebPepperSocketImpl(const WebDocument& document, WebPepperS
ocketClient* client) |
50 : m_client(client) | 49 : m_client(client) |
51 , m_channelProxy(WebPepperSocketChannelClientProxy::create(this)) | 50 , m_channelProxy(WebPepperSocketChannelClientProxy::create(this)) |
52 , m_binaryType(BinaryTypeBlob) | 51 , m_binaryType(BinaryTypeBlob) |
53 , m_isClosingOrClosed(false) | 52 , m_isClosingOrClosed(false) |
54 , m_bufferedAmount(0) | 53 , m_bufferedAmount(0) |
55 , m_bufferedAmountAfterClose(0) | 54 , m_bufferedAmountAfterClose(0) |
(...skipping 102 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
158 m_subprotocol = subprotocol; | 157 m_subprotocol = subprotocol; |
159 m_extensions = extensions; | 158 m_extensions = extensions; |
160 m_client->didConnect(); | 159 m_client->didConnect(); |
161 } | 160 } |
162 | 161 |
163 void WebPepperSocketImpl::didReceiveTextMessage(const String& payload) | 162 void WebPepperSocketImpl::didReceiveTextMessage(const String& payload) |
164 { | 163 { |
165 m_client->didReceiveMessage(WebString(payload)); | 164 m_client->didReceiveMessage(WebString(payload)); |
166 } | 165 } |
167 | 166 |
168 void WebPepperSocketImpl::didReceiveBinaryMessage(std::unique_ptr<Vector<char>>
payload) | 167 void WebPepperSocketImpl::didReceiveBinaryMessage(PassOwnPtr<Vector<char>> paylo
ad) |
169 { | 168 { |
170 switch (m_binaryType) { | 169 switch (m_binaryType) { |
171 case BinaryTypeBlob: | 170 case BinaryTypeBlob: |
172 // FIXME: Handle Blob after supporting WebBlob. | 171 // FIXME: Handle Blob after supporting WebBlob. |
173 break; | 172 break; |
174 case BinaryTypeArrayBuffer: | 173 case BinaryTypeArrayBuffer: |
175 m_client->didReceiveArrayBuffer(WebArrayBuffer(DOMArrayBuffer::create(pa
yload->data(), payload->size()))); | 174 m_client->didReceiveArrayBuffer(WebArrayBuffer(DOMArrayBuffer::create(pa
yload->data(), payload->size()))); |
176 break; | 175 break; |
177 } | 176 } |
178 } | 177 } |
(...skipping 20 matching lines...) Expand all Loading... |
199 void WebPepperSocketImpl::didClose(WebSocketChannelClient::ClosingHandshakeCompl
etionStatus status, unsigned short code, const String& reason) | 198 void WebPepperSocketImpl::didClose(WebSocketChannelClient::ClosingHandshakeCompl
etionStatus status, unsigned short code, const String& reason) |
200 { | 199 { |
201 m_isClosingOrClosed = true; | 200 m_isClosingOrClosed = true; |
202 m_client->didClose(static_cast<WebPepperSocketClient::ClosingHandshakeComple
tionStatus>(status), code, WebString(reason)); | 201 m_client->didClose(static_cast<WebPepperSocketClient::ClosingHandshakeComple
tionStatus>(status), code, WebString(reason)); |
203 | 202 |
204 // FIXME: Deprecate this call. | 203 // FIXME: Deprecate this call. |
205 m_client->didClose(m_bufferedAmount - m_bufferedAmountAfterClose, static_cas
t<WebPepperSocketClient::ClosingHandshakeCompletionStatus>(status), code, WebStr
ing(reason)); | 204 m_client->didClose(m_bufferedAmount - m_bufferedAmountAfterClose, static_cas
t<WebPepperSocketClient::ClosingHandshakeCompletionStatus>(status), code, WebStr
ing(reason)); |
206 } | 205 } |
207 | 206 |
208 } // namespace blink | 207 } // namespace blink |
OLD | NEW |