Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(54)

Side by Side Diff: Source/modules/mediastream/RTCPeerConnection.cpp

Issue 563703002: Oilpan: Enable oilpan for callback classes (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 6 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
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 * 7 *
8 * 1. Redistributions of source code must retain the above copyright 8 * 1. 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 * 2. Redistributions in binary form must reproduce the above copyright 10 * 2. Redistributions in binary form must reproduce the above copyright
(...skipping 252 matching lines...) Expand 10 before | Expand all | Expand 10 after
263 } 263 }
264 } 264 }
265 265
266 RTCPeerConnection::~RTCPeerConnection() 266 RTCPeerConnection::~RTCPeerConnection()
267 { 267 {
268 // This checks that close() or stop() is called before the destructor. 268 // This checks that close() or stop() is called before the destructor.
269 // We are assuming that a wrapper is always created when RTCPeerConnection i s created. 269 // We are assuming that a wrapper is always created when RTCPeerConnection i s created.
270 ASSERT(m_closed || m_stopped); 270 ASSERT(m_closed || m_stopped);
271 } 271 }
272 272
273 void RTCPeerConnection::createOffer(PassOwnPtrWillBeRawPtr<RTCSessionDescription Callback> successCallback, PassOwnPtrWillBeRawPtr<RTCErrorCallback> errorCallbac k, const Dictionary& rtcOfferOptions, ExceptionState& exceptionState) 273 void RTCPeerConnection::createOffer(RTCSessionDescriptionCallback* successCallba ck, RTCErrorCallback* errorCallback, const Dictionary& rtcOfferOptions, Exceptio nState& exceptionState)
274 { 274 {
275 if (throwExceptionIfSignalingStateClosed(m_signalingState, exceptionState)) 275 if (throwExceptionIfSignalingStateClosed(m_signalingState, exceptionState))
276 return; 276 return;
277 277
278 ASSERT(successCallback); 278 ASSERT(successCallback);
279 279
280 RTCOfferOptions* offerOptions = parseOfferOptions(rtcOfferOptions, exception State); 280 RTCOfferOptions* offerOptions = parseOfferOptions(rtcOfferOptions, exception State);
281 if (exceptionState.hadException()) 281 if (exceptionState.hadException())
282 return; 282 return;
283 283
284 RTCSessionDescriptionRequest* request = RTCSessionDescriptionRequestImpl::cr eate(executionContext(), this, successCallback, errorCallback); 284 RTCSessionDescriptionRequest* request = RTCSessionDescriptionRequestImpl::cr eate(executionContext(), this, successCallback, errorCallback);
285 285
286 if (offerOptions) { 286 if (offerOptions) {
287 m_peerHandler->createOffer(request, offerOptions); 287 m_peerHandler->createOffer(request, offerOptions);
288 } else { 288 } else {
289 WebMediaConstraints constraints = MediaConstraintsImpl::create(rtcOfferO ptions, exceptionState); 289 WebMediaConstraints constraints = MediaConstraintsImpl::create(rtcOfferO ptions, exceptionState);
290 if (exceptionState.hadException()) 290 if (exceptionState.hadException())
291 return; 291 return;
292 292
293 m_peerHandler->createOffer(request, constraints); 293 m_peerHandler->createOffer(request, constraints);
294 } 294 }
295 } 295 }
296 296
297 void RTCPeerConnection::createAnswer(PassOwnPtrWillBeRawPtr<RTCSessionDescriptio nCallback> successCallback, PassOwnPtrWillBeRawPtr<RTCErrorCallback> errorCallba ck, const Dictionary& mediaConstraints, ExceptionState& exceptionState) 297 void RTCPeerConnection::createAnswer(RTCSessionDescriptionCallback* successCallb ack, RTCErrorCallback* errorCallback, const Dictionary& mediaConstraints, Except ionState& exceptionState)
298 { 298 {
299 if (throwExceptionIfSignalingStateClosed(m_signalingState, exceptionState)) 299 if (throwExceptionIfSignalingStateClosed(m_signalingState, exceptionState))
300 return; 300 return;
301 301
302 ASSERT(successCallback); 302 ASSERT(successCallback);
303 303
304 WebMediaConstraints constraints = MediaConstraintsImpl::create(mediaConstrai nts, exceptionState); 304 WebMediaConstraints constraints = MediaConstraintsImpl::create(mediaConstrai nts, exceptionState);
305 if (exceptionState.hadException()) 305 if (exceptionState.hadException())
306 return; 306 return;
307 307
308 RTCSessionDescriptionRequest* request = RTCSessionDescriptionRequestImpl::cr eate(executionContext(), this, successCallback, errorCallback); 308 RTCSessionDescriptionRequest* request = RTCSessionDescriptionRequestImpl::cr eate(executionContext(), this, successCallback, errorCallback);
309 m_peerHandler->createAnswer(request, constraints); 309 m_peerHandler->createAnswer(request, constraints);
310 } 310 }
311 311
312 void RTCPeerConnection::setLocalDescription(RTCSessionDescription* sessionDescri ption, PassOwnPtrWillBeRawPtr<VoidCallback> successCallback, PassOwnPtrWillBeRaw Ptr<RTCErrorCallback> errorCallback, ExceptionState& exceptionState) 312 void RTCPeerConnection::setLocalDescription(RTCSessionDescription* sessionDescri ption, VoidCallback* successCallback, RTCErrorCallback* errorCallback, Exception State& exceptionState)
313 { 313 {
314 if (throwExceptionIfSignalingStateClosed(m_signalingState, exceptionState)) 314 if (throwExceptionIfSignalingStateClosed(m_signalingState, exceptionState))
315 return; 315 return;
316 316
317 if (!sessionDescription) { 317 if (!sessionDescription) {
318 exceptionState.throwDOMException(TypeMismatchError, ExceptionMessages::a rgumentNullOrIncorrectType(1, "RTCSessionDescription")); 318 exceptionState.throwDOMException(TypeMismatchError, ExceptionMessages::a rgumentNullOrIncorrectType(1, "RTCSessionDescription"));
319 return; 319 return;
320 } 320 }
321 321
322 RTCVoidRequest* request = RTCVoidRequestImpl::create(executionContext(), thi s, successCallback, errorCallback); 322 RTCVoidRequest* request = RTCVoidRequestImpl::create(executionContext(), thi s, successCallback, errorCallback);
323 m_peerHandler->setLocalDescription(request, sessionDescription->webSessionDe scription()); 323 m_peerHandler->setLocalDescription(request, sessionDescription->webSessionDe scription());
324 } 324 }
325 325
326 RTCSessionDescription* RTCPeerConnection::localDescription(ExceptionState& excep tionState) 326 RTCSessionDescription* RTCPeerConnection::localDescription(ExceptionState& excep tionState)
327 { 327 {
328 WebRTCSessionDescription webSessionDescription = m_peerHandler->localDescrip tion(); 328 WebRTCSessionDescription webSessionDescription = m_peerHandler->localDescrip tion();
329 if (webSessionDescription.isNull()) 329 if (webSessionDescription.isNull())
330 return nullptr; 330 return nullptr;
331 331
332 return RTCSessionDescription::create(webSessionDescription); 332 return RTCSessionDescription::create(webSessionDescription);
333 } 333 }
334 334
335 void RTCPeerConnection::setRemoteDescription(RTCSessionDescription* sessionDescr iption, PassOwnPtrWillBeRawPtr<VoidCallback> successCallback, PassOwnPtrWillBeRa wPtr<RTCErrorCallback> errorCallback, ExceptionState& exceptionState) 335 void RTCPeerConnection::setRemoteDescription(RTCSessionDescription* sessionDescr iption, VoidCallback* successCallback, RTCErrorCallback* errorCallback, Exceptio nState& exceptionState)
336 { 336 {
337 if (throwExceptionIfSignalingStateClosed(m_signalingState, exceptionState)) 337 if (throwExceptionIfSignalingStateClosed(m_signalingState, exceptionState))
338 return; 338 return;
339 339
340 if (!sessionDescription) { 340 if (!sessionDescription) {
341 exceptionState.throwDOMException(TypeMismatchError, ExceptionMessages::a rgumentNullOrIncorrectType(1, "RTCSessionDescription")); 341 exceptionState.throwDOMException(TypeMismatchError, ExceptionMessages::a rgumentNullOrIncorrectType(1, "RTCSessionDescription"));
342 return; 342 return;
343 } 343 }
344 344
345 RTCVoidRequest* request = RTCVoidRequestImpl::create(executionContext(), thi s, successCallback, errorCallback); 345 RTCVoidRequest* request = RTCVoidRequestImpl::create(executionContext(), thi s, successCallback, errorCallback);
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
381 if (!iceCandidate) { 381 if (!iceCandidate) {
382 exceptionState.throwDOMException(TypeMismatchError, ExceptionMessages::a rgumentNullOrIncorrectType(1, "RTCIceCandidate")); 382 exceptionState.throwDOMException(TypeMismatchError, ExceptionMessages::a rgumentNullOrIncorrectType(1, "RTCIceCandidate"));
383 return; 383 return;
384 } 384 }
385 385
386 bool valid = m_peerHandler->addICECandidate(iceCandidate->webCandidate()); 386 bool valid = m_peerHandler->addICECandidate(iceCandidate->webCandidate());
387 if (!valid) 387 if (!valid)
388 exceptionState.throwDOMException(SyntaxError, "The ICE candidate could n ot be added."); 388 exceptionState.throwDOMException(SyntaxError, "The ICE candidate could n ot be added.");
389 } 389 }
390 390
391 void RTCPeerConnection::addIceCandidate(RTCIceCandidate* iceCandidate, PassOwnPt rWillBeRawPtr<VoidCallback> successCallback, PassOwnPtrWillBeRawPtr<RTCErrorCall back> errorCallback, ExceptionState& exceptionState) 391 void RTCPeerConnection::addIceCandidate(RTCIceCandidate* iceCandidate, VoidCallb ack* successCallback, RTCErrorCallback* errorCallback, ExceptionState& exception State)
392 { 392 {
393 if (throwExceptionIfSignalingStateClosed(m_signalingState, exceptionState)) 393 if (throwExceptionIfSignalingStateClosed(m_signalingState, exceptionState))
394 return; 394 return;
395 395
396 if (!iceCandidate) { 396 if (!iceCandidate) {
397 exceptionState.throwDOMException(TypeMismatchError, ExceptionMessages::a rgumentNullOrIncorrectType(1, "RTCIceCandidate")); 397 exceptionState.throwDOMException(TypeMismatchError, ExceptionMessages::a rgumentNullOrIncorrectType(1, "RTCIceCandidate"));
398 return; 398 return;
399 } 399 }
400 ASSERT(successCallback); 400 ASSERT(successCallback);
401 ASSERT(errorCallback); 401 ASSERT(errorCallback);
(...skipping 126 matching lines...) Expand 10 before | Expand all | Expand 10 after
528 } 528 }
529 529
530 for (MediaStreamVector::iterator iter = m_remoteStreams.begin(); iter != m_r emoteStreams.end(); ++iter) { 530 for (MediaStreamVector::iterator iter = m_remoteStreams.begin(); iter != m_r emoteStreams.end(); ++iter) {
531 if ((*iter)->id() == streamId) 531 if ((*iter)->id() == streamId)
532 return iter->get(); 532 return iter->get();
533 } 533 }
534 534
535 return 0; 535 return 0;
536 } 536 }
537 537
538 void RTCPeerConnection::getStats(PassOwnPtrWillBeRawPtr<RTCStatsCallback> succes sCallback, MediaStreamTrack* selector) 538 void RTCPeerConnection::getStats(RTCStatsCallback* successCallback, MediaStreamT rack* selector)
539 { 539 {
540 RTCStatsRequest* statsRequest = RTCStatsRequestImpl::create(executionContext (), this, successCallback, selector); 540 RTCStatsRequest* statsRequest = RTCStatsRequestImpl::create(executionContext (), this, successCallback, selector);
541 // FIXME: Add passing selector as part of the statsRequest. 541 // FIXME: Add passing selector as part of the statsRequest.
542 m_peerHandler->getStats(statsRequest); 542 m_peerHandler->getStats(statsRequest);
543 } 543 }
544 544
545 RTCDataChannel* RTCPeerConnection::createDataChannel(String label, const Diction ary& options, ExceptionState& exceptionState) 545 RTCDataChannel* RTCPeerConnection::createDataChannel(String label, const Diction ary& options, ExceptionState& exceptionState)
546 { 546 {
547 if (throwExceptionIfSignalingStateClosed(m_signalingState, exceptionState)) 547 if (throwExceptionIfSignalingStateClosed(m_signalingState, exceptionState))
548 return nullptr; 548 return nullptr;
(...skipping 256 matching lines...) Expand 10 before | Expand all | Expand 10 after
805 visitor->trace(m_localStreams); 805 visitor->trace(m_localStreams);
806 visitor->trace(m_remoteStreams); 806 visitor->trace(m_remoteStreams);
807 visitor->trace(m_dataChannels); 807 visitor->trace(m_dataChannels);
808 #if ENABLE(OILPAN) 808 #if ENABLE(OILPAN)
809 visitor->trace(m_scheduledEvents); 809 visitor->trace(m_scheduledEvents);
810 #endif 810 #endif
811 EventTargetWithInlineData::trace(visitor); 811 EventTargetWithInlineData::trace(visitor);
812 } 812 }
813 813
814 } // namespace blink 814 } // namespace blink
OLDNEW
« no previous file with comments | « Source/modules/mediastream/RTCPeerConnection.h ('k') | Source/modules/mediastream/RTCSessionDescriptionCallback.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698