diff options
author | grunell@chromium.org <grunell@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-04-12 07:37:05 +0000 |
---|---|---|
committer | grunell@chromium.org <grunell@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-04-12 07:37:05 +0000 |
commit | e6eb171a5edca28341f77dd40c63c1792ddbb5cb (patch) | |
tree | 42ce9e5ad68c8975620d7aa82f092b3a5b0712b2 /content/renderer/media/mock_peer_connection_impl.cc | |
parent | 2d4729587b4377874e12be4c578333f02f0cba4b (diff) | |
download | chromium_src-e6eb171a5edca28341f77dd40c63c1792ddbb5cb.zip chromium_src-e6eb171a5edca28341f77dd40c63c1792ddbb5cb.tar.gz chromium_src-e6eb171a5edca28341f77dd40c63c1792ddbb5cb.tar.bz2 |
Adding JSEP PeerConnection glue.
This adds glue for JSEP PeerConnection. PeerConnectionHandler is split in two classes and a base class. The class name is kept for the old ROAP PeerConnection to be aligned with WebKit naming. ROAP is planned to be removed pretty soon, then the classes can be refactored.
See also main WebKit bug https://bugs.webkit.org/show_bug.cgi?id=80589
(In particular https://bugs.webkit.org/show_bug.cgi?id=82450)
TEST=content_unittests and manual webrtc test.
Review URL: http://codereview.chromium.org/9699069
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@131949 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'content/renderer/media/mock_peer_connection_impl.cc')
-rw-r--r-- | content/renderer/media/mock_peer_connection_impl.cc | 52 |
1 files changed, 31 insertions, 21 deletions
diff --git a/content/renderer/media/mock_peer_connection_impl.cc b/content/renderer/media/mock_peer_connection_impl.cc index ccfae44..7f68eae 100644 --- a/content/renderer/media/mock_peer_connection_impl.cc +++ b/content/renderer/media/mock_peer_connection_impl.cc @@ -2,6 +2,7 @@ // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. +#include "content/renderer/media/mock_media_stream_dependency_factory.h" #include "content/renderer/media/mock_peer_connection_impl.h" #include <vector> @@ -36,10 +37,19 @@ class MockStreamCollection : public StreamCollectionInterface { std::vector<talk_base::scoped_refptr<MediaStreamInterface> > streams_; }; -MockPeerConnectionImpl::MockPeerConnectionImpl() - : stream_changes_committed_(false), +const char MockPeerConnectionImpl::kDummyOffer[] = "dummy offer"; + +MockPeerConnectionImpl::MockPeerConnectionImpl( + MockMediaStreamDependencyFactory* factory) + : dependency_factory_(factory), + stream_changes_committed_(false), local_streams_(new talk_base::RefCountedObject<MockStreamCollection>), - remote_streams_(new talk_base::RefCountedObject<MockStreamCollection>) { + remote_streams_(new talk_base::RefCountedObject<MockStreamCollection>), + hint_audio_(false), + hint_video_(false), + action_(kAnswer), + ice_options_(kOnlyRelay), + ready_state_(kNew) { } MockPeerConnectionImpl::~MockPeerConnectionImpl() {} @@ -85,8 +95,7 @@ void MockPeerConnectionImpl::Close() { } MockPeerConnectionImpl::ReadyState MockPeerConnectionImpl::ready_state() { - NOTIMPLEMENTED(); - return kNew; + return ready_state_; } MockPeerConnectionImpl::SdpState MockPeerConnectionImpl::sdp_state() { @@ -95,53 +104,54 @@ MockPeerConnectionImpl::SdpState MockPeerConnectionImpl::sdp_state() { } bool MockPeerConnectionImpl::StartIce(IceOptions options) { - NOTIMPLEMENTED(); - return false; + ice_options_ = options; + return true; } webrtc::SessionDescriptionInterface* MockPeerConnectionImpl::CreateOffer( const webrtc::MediaHints& hints) { - NOTIMPLEMENTED(); - return NULL; + hint_audio_ = hints.has_audio(); + hint_video_ = hints.has_video(); + return dependency_factory_->CreateSessionDescription(kDummyOffer); } webrtc::SessionDescriptionInterface* MockPeerConnectionImpl::CreateAnswer( const webrtc::MediaHints& hints, const webrtc::SessionDescriptionInterface* offer) { - NOTIMPLEMENTED(); - return NULL; + hint_audio_ = hints.has_audio(); + hint_video_ = hints.has_video(); + offer->ToString(&description_sdp_); + return dependency_factory_->CreateSessionDescription(description_sdp_); } bool MockPeerConnectionImpl::SetLocalDescription( Action action, webrtc::SessionDescriptionInterface* desc) { - NOTIMPLEMENTED(); - return false; + action_ = action; + return desc->ToString(&description_sdp_); } bool MockPeerConnectionImpl::SetRemoteDescription( Action action, webrtc::SessionDescriptionInterface* desc) { - NOTIMPLEMENTED(); - return false; + action_ = action; + return desc->ToString(&description_sdp_); } bool MockPeerConnectionImpl::ProcessIceMessage( const webrtc::IceCandidateInterface* ice_candidate) { - NOTIMPLEMENTED(); - return false; + ice_label_ = ice_candidate->label(); + return ice_candidate->ToString(&ice_sdp_); } const webrtc::SessionDescriptionInterface* MockPeerConnectionImpl::local_description() const { - NOTIMPLEMENTED(); - return NULL; + return dependency_factory_->CreateSessionDescription(description_sdp_); } const webrtc::SessionDescriptionInterface* MockPeerConnectionImpl::remote_description() const { - NOTIMPLEMENTED(); - return NULL; + return dependency_factory_->CreateSessionDescription(description_sdp_); } void MockPeerConnectionImpl::AddRemoteStream(MediaStreamInterface* stream) { |