| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2012 Google Inc. All rights reserved. | 2 * Copyright (C) 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 | 5 * modification, are permitted provided that the following conditions |
| 6 * are met: | 6 * are met: |
| 7 * 1. Redistributions of source code must retain the above copyright | 7 * 1. Redistributions of source code must retain the above copyright |
| 8 * notice, this list of conditions and the following disclaimer. | 8 * notice, this list of conditions and the following disclaimer. |
| 9 * 2. Redistributions in binary form must reproduce the above copyright | 9 * 2. Redistributions in binary form must reproduce the above copyright |
| 10 * notice, this list of conditions and the following disclaimer in the | 10 * notice, this list of conditions and the following disclaimer in the |
| (...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 45 static void throwCouldNotSendDataException(ExceptionState& exceptionState) | 45 static void throwCouldNotSendDataException(ExceptionState& exceptionState) |
| 46 { | 46 { |
| 47 exceptionState.throwDOMException(NetworkError, "Could not send data"); | 47 exceptionState.throwDOMException(NetworkError, "Could not send data"); |
| 48 } | 48 } |
| 49 | 49 |
| 50 static void throwNoBlobSupportException(ExceptionState& exceptionState) | 50 static void throwNoBlobSupportException(ExceptionState& exceptionState) |
| 51 { | 51 { |
| 52 exceptionState.throwDOMException(NotSupportedError, "Blob support not implem
ented yet"); | 52 exceptionState.throwDOMException(NotSupportedError, "Blob support not implem
ented yet"); |
| 53 } | 53 } |
| 54 | 54 |
| 55 RTCDataChannel* RTCDataChannel::create(ExecutionContext* context, RTCPeerConnect
ion* connection, PassOwnPtr<blink::WebRTCDataChannelHandler> handler) | 55 RTCDataChannel* RTCDataChannel::create(ExecutionContext* context, RTCPeerConnect
ion* connection, PassOwnPtr<WebRTCDataChannelHandler> handler) |
| 56 { | 56 { |
| 57 ASSERT(handler); | 57 ASSERT(handler); |
| 58 return adoptRefCountedGarbageCollectedWillBeNoop(new RTCDataChannel(context,
connection, handler)); | 58 return adoptRefCountedGarbageCollectedWillBeNoop(new RTCDataChannel(context,
connection, handler)); |
| 59 } | 59 } |
| 60 | 60 |
| 61 RTCDataChannel* RTCDataChannel::create(ExecutionContext* context, RTCPeerConnect
ion* connection, blink::WebRTCPeerConnectionHandler* peerConnectionHandler, cons
t String& label, const blink::WebRTCDataChannelInit& init, ExceptionState& excep
tionState) | 61 RTCDataChannel* RTCDataChannel::create(ExecutionContext* context, RTCPeerConnect
ion* connection, WebRTCPeerConnectionHandler* peerConnectionHandler, const Strin
g& label, const WebRTCDataChannelInit& init, ExceptionState& exceptionState) |
| 62 { | 62 { |
| 63 OwnPtr<blink::WebRTCDataChannelHandler> handler = adoptPtr(peerConnectionHan
dler->createDataChannel(label, init)); | 63 OwnPtr<WebRTCDataChannelHandler> handler = adoptPtr(peerConnectionHandler->c
reateDataChannel(label, init)); |
| 64 if (!handler) { | 64 if (!handler) { |
| 65 exceptionState.throwDOMException(NotSupportedError, "RTCDataChannel is n
ot supported"); | 65 exceptionState.throwDOMException(NotSupportedError, "RTCDataChannel is n
ot supported"); |
| 66 return nullptr; | 66 return nullptr; |
| 67 } | 67 } |
| 68 return adoptRefCountedGarbageCollectedWillBeNoop(new RTCDataChannel(context,
connection, handler.release())); | 68 return adoptRefCountedGarbageCollectedWillBeNoop(new RTCDataChannel(context,
connection, handler.release())); |
| 69 } | 69 } |
| 70 | 70 |
| 71 RTCDataChannel::RTCDataChannel(ExecutionContext* context, RTCPeerConnection* con
nection, PassOwnPtr<blink::WebRTCDataChannelHandler> handler) | 71 RTCDataChannel::RTCDataChannel(ExecutionContext* context, RTCPeerConnection* con
nection, PassOwnPtr<WebRTCDataChannelHandler> handler) |
| 72 : m_executionContext(context) | 72 : m_executionContext(context) |
| 73 , m_handler(handler) | 73 , m_handler(handler) |
| 74 , m_stopped(false) | 74 , m_stopped(false) |
| 75 , m_readyState(ReadyStateConnecting) | 75 , m_readyState(ReadyStateConnecting) |
| 76 , m_binaryType(BinaryTypeArrayBuffer) | 76 , m_binaryType(BinaryTypeArrayBuffer) |
| 77 , m_scheduledEventTimer(this, &RTCDataChannel::scheduledEventTimerFired) | 77 , m_scheduledEventTimer(this, &RTCDataChannel::scheduledEventTimerFired) |
| 78 , m_connection(connection) | 78 , m_connection(connection) |
| 79 { | 79 { |
| 80 ScriptWrappable::init(this); | 80 ScriptWrappable::init(this); |
| 81 m_handler->setClient(this); | 81 m_handler->setClient(this); |
| (...skipping 138 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 220 } | 220 } |
| 221 | 221 |
| 222 void RTCDataChannel::close() | 222 void RTCDataChannel::close() |
| 223 { | 223 { |
| 224 if (m_stopped) | 224 if (m_stopped) |
| 225 return; | 225 return; |
| 226 | 226 |
| 227 m_handler->close(); | 227 m_handler->close(); |
| 228 } | 228 } |
| 229 | 229 |
| 230 void RTCDataChannel::didChangeReadyState(blink::WebRTCDataChannelHandlerClient::
ReadyState newState) | 230 void RTCDataChannel::didChangeReadyState(WebRTCDataChannelHandlerClient::ReadySt
ate newState) |
| 231 { | 231 { |
| 232 if (m_stopped || m_readyState == ReadyStateClosed) | 232 if (m_stopped || m_readyState == ReadyStateClosed) |
| 233 return; | 233 return; |
| 234 | 234 |
| 235 m_readyState = newState; | 235 m_readyState = newState; |
| 236 | 236 |
| 237 switch (m_readyState) { | 237 switch (m_readyState) { |
| 238 case ReadyStateOpen: | 238 case ReadyStateOpen: |
| 239 scheduleDispatchEvent(Event::create(EventTypeNames::open)); | 239 scheduleDispatchEvent(Event::create(EventTypeNames::open)); |
| 240 break; | 240 break; |
| 241 case ReadyStateClosed: | 241 case ReadyStateClosed: |
| 242 scheduleDispatchEvent(Event::create(EventTypeNames::close)); | 242 scheduleDispatchEvent(Event::create(EventTypeNames::close)); |
| 243 break; | 243 break; |
| 244 default: | 244 default: |
| 245 break; | 245 break; |
| 246 } | 246 } |
| 247 } | 247 } |
| 248 | 248 |
| 249 void RTCDataChannel::didReceiveStringData(const blink::WebString& text) | 249 void RTCDataChannel::didReceiveStringData(const WebString& text) |
| 250 { | 250 { |
| 251 if (m_stopped) | 251 if (m_stopped) |
| 252 return; | 252 return; |
| 253 | 253 |
| 254 scheduleDispatchEvent(MessageEvent::create(text)); | 254 scheduleDispatchEvent(MessageEvent::create(text)); |
| 255 } | 255 } |
| 256 | 256 |
| 257 void RTCDataChannel::didReceiveRawData(const char* data, size_t dataLength) | 257 void RTCDataChannel::didReceiveRawData(const char* data, size_t dataLength) |
| 258 { | 258 { |
| 259 if (m_stopped) | 259 if (m_stopped) |
| (...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 329 } | 329 } |
| 330 | 330 |
| 331 void RTCDataChannel::trace(Visitor* visitor) | 331 void RTCDataChannel::trace(Visitor* visitor) |
| 332 { | 332 { |
| 333 visitor->trace(m_scheduledEvents); | 333 visitor->trace(m_scheduledEvents); |
| 334 visitor->registerWeakMembers<RTCDataChannel, &RTCDataChannel::clearWeakMembe
rs>(this); | 334 visitor->registerWeakMembers<RTCDataChannel, &RTCDataChannel::clearWeakMembe
rs>(this); |
| 335 EventTargetWithInlineData::trace(visitor); | 335 EventTargetWithInlineData::trace(visitor); |
| 336 } | 336 } |
| 337 | 337 |
| 338 } // namespace blink | 338 } // namespace blink |
| OLD | NEW |