Make OnAddStream and OnRemoveStream not required

This changes PeerConnectionObserver to not default the stream
events as pure virtual. Applications which have switched to using
OnAddTrack and OnRemoveTrack will no longer need to implement
these callbacks.

Bug: webrtc:8587
Change-Id: I659ce7b5a208ebfcb29e899dd17916ae0072d3cc
Reviewed-on: https://webrtc-review.googlesource.com/39384
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Reviewed-by: Peter Thatcher <pthatcher@webrtc.org>
Commit-Queue: Taylor Brandstetter <deadbeef@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#21665}
This commit is contained in:
Steve Anton
2018-01-16 10:11:06 -08:00
committed by Commit Bot
parent f6464c9ef7
commit 772eb2115a

View File

@ -976,27 +976,22 @@ class PeerConnectionInterface : public rtc::RefCountInterface {
// Application should implement these methods. // Application should implement these methods.
class PeerConnectionObserver { class PeerConnectionObserver {
public: public:
enum StateType {
kSignalingState,
kIceState,
};
virtual ~PeerConnectionObserver() = default; virtual ~PeerConnectionObserver() = default;
// Triggered when the SignalingState changed. // Triggered when the SignalingState changed.
virtual void OnSignalingChange( virtual void OnSignalingChange(
PeerConnectionInterface::SignalingState new_state) = 0; PeerConnectionInterface::SignalingState new_state) = 0;
// TODO(deadbeef): Once all subclasses override the scoped_refptr versions
// of the below three methods, make them pure virtual and remove the raw
// pointer version.
// Triggered when media is received on a new stream from remote peer. // Triggered when media is received on a new stream from remote peer.
virtual void OnAddStream(rtc::scoped_refptr<MediaStreamInterface> stream) = 0; // Deprecated: This callback will no longer be fired with Unified Plan
// semantics. Consider switching to OnAddTrack.
virtual void OnAddStream(rtc::scoped_refptr<MediaStreamInterface> stream) {}
// Triggered when a remote peer close a stream. // Triggered when a remote peer close a stream.
virtual void OnRemoveStream( // Deprecated: This callback will no longer be fired with Unified Plan
rtc::scoped_refptr<MediaStreamInterface> stream) = 0; // semantics.
virtual void OnRemoveStream(rtc::scoped_refptr<MediaStreamInterface> stream) {
}
// Triggered when a remote peer opens a data channel. // Triggered when a remote peer opens a data channel.
virtual void OnDataChannel( virtual void OnDataChannel(