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> |
45 | 46 |
46 namespace blink { | 47 namespace blink { |
47 | 48 |
48 WebPepperSocketImpl::WebPepperSocketImpl(const WebDocument& document, WebPepperS
ocketClient* client) | 49 WebPepperSocketImpl::WebPepperSocketImpl(const WebDocument& document, WebPepperS
ocketClient* client) |
49 : m_client(client) | 50 : m_client(client) |
50 , m_channelProxy(WebPepperSocketChannelClientProxy::create(this)) | 51 , m_channelProxy(WebPepperSocketChannelClientProxy::create(this)) |
51 , m_binaryType(BinaryTypeBlob) | 52 , m_binaryType(BinaryTypeBlob) |
52 , m_isClosingOrClosed(false) | 53 , m_isClosingOrClosed(false) |
53 , m_bufferedAmount(0) | 54 , m_bufferedAmount(0) |
54 , m_bufferedAmountAfterClose(0) | 55 , m_bufferedAmountAfterClose(0) |
(...skipping 102 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
157 m_subprotocol = subprotocol; | 158 m_subprotocol = subprotocol; |
158 m_extensions = extensions; | 159 m_extensions = extensions; |
159 m_client->didConnect(); | 160 m_client->didConnect(); |
160 } | 161 } |
161 | 162 |
162 void WebPepperSocketImpl::didReceiveTextMessage(const String& payload) | 163 void WebPepperSocketImpl::didReceiveTextMessage(const String& payload) |
163 { | 164 { |
164 m_client->didReceiveMessage(WebString(payload)); | 165 m_client->didReceiveMessage(WebString(payload)); |
165 } | 166 } |
166 | 167 |
167 void WebPepperSocketImpl::didReceiveBinaryMessage(PassOwnPtr<Vector<char>> paylo
ad) | 168 void WebPepperSocketImpl::didReceiveBinaryMessage(std::unique_ptr<Vector<char>>
payload) |
168 { | 169 { |
169 switch (m_binaryType) { | 170 switch (m_binaryType) { |
170 case BinaryTypeBlob: | 171 case BinaryTypeBlob: |
171 // FIXME: Handle Blob after supporting WebBlob. | 172 // FIXME: Handle Blob after supporting WebBlob. |
172 break; | 173 break; |
173 case BinaryTypeArrayBuffer: | 174 case BinaryTypeArrayBuffer: |
174 m_client->didReceiveArrayBuffer(WebArrayBuffer(DOMArrayBuffer::create(pa
yload->data(), payload->size()))); | 175 m_client->didReceiveArrayBuffer(WebArrayBuffer(DOMArrayBuffer::create(pa
yload->data(), payload->size()))); |
175 break; | 176 break; |
176 } | 177 } |
177 } | 178 } |
(...skipping 20 matching lines...) Expand all Loading... |
198 void WebPepperSocketImpl::didClose(WebSocketChannelClient::ClosingHandshakeCompl
etionStatus status, unsigned short code, const String& reason) | 199 void WebPepperSocketImpl::didClose(WebSocketChannelClient::ClosingHandshakeCompl
etionStatus status, unsigned short code, const String& reason) |
199 { | 200 { |
200 m_isClosingOrClosed = true; | 201 m_isClosingOrClosed = true; |
201 m_client->didClose(static_cast<WebPepperSocketClient::ClosingHandshakeComple
tionStatus>(status), code, WebString(reason)); | 202 m_client->didClose(static_cast<WebPepperSocketClient::ClosingHandshakeComple
tionStatus>(status), code, WebString(reason)); |
202 | 203 |
203 // FIXME: Deprecate this call. | 204 // FIXME: Deprecate this call. |
204 m_client->didClose(m_bufferedAmount - m_bufferedAmountAfterClose, static_cas
t<WebPepperSocketClient::ClosingHandshakeCompletionStatus>(status), code, WebStr
ing(reason)); | 205 m_client->didClose(m_bufferedAmount - m_bufferedAmountAfterClose, static_cas
t<WebPepperSocketClient::ClosingHandshakeCompletionStatus>(status), code, WebStr
ing(reason)); |
205 } | 206 } |
206 | 207 |
207 } // namespace blink | 208 } // namespace blink |
OLD | NEW |