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

Side by Side Diff: content/renderer/media/mock_peer_connection_impl.cc

Issue 10703095: New PeerConnection handler in Chrome to support latest PeerConnection draft (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Readd the UMA histogram for Deprecated PeerConnection to not screw up the stats. Created 8 years, 3 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 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "content/renderer/media/mock_media_stream_dependency_factory.h" 5 #include "content/renderer/media/mock_media_stream_dependency_factory.h"
6 #include "content/renderer/media/mock_peer_connection_impl.h" 6 #include "content/renderer/media/mock_peer_connection_impl.h"
7 7
8 #include <vector> 8 #include <vector>
9 9
10 #include "base/logging.h" 10 #include "base/logging.h"
(...skipping 11 matching lines...) Expand all
22 virtual MediaStreamInterface* find(const std::string& label) OVERRIDE { 22 virtual MediaStreamInterface* find(const std::string& label) OVERRIDE {
23 for (size_t i = 0; i < streams_.size(); ++i) { 23 for (size_t i = 0; i < streams_.size(); ++i) {
24 if (streams_[i]->label() == label) 24 if (streams_[i]->label() == label)
25 return streams_[i]; 25 return streams_[i];
26 } 26 }
27 return NULL; 27 return NULL;
28 } 28 }
29 void AddStream(MediaStreamInterface* stream) { 29 void AddStream(MediaStreamInterface* stream) {
30 streams_.push_back(stream); 30 streams_.push_back(stream);
31 } 31 }
32 void RemoveStream(MediaStreamInterface* stream) {
33 StreamVector::iterator it = streams_.begin();
34 for (; it != streams_.end(); ++it) {
35 if (it->get() == stream) {
36 streams_.erase(it);
37 break;
38 }
39 }
40 }
32 41
33 protected: 42 protected:
34 virtual ~MockStreamCollection() {} 43 virtual ~MockStreamCollection() {}
35 44
36 private: 45 private:
37 std::vector<talk_base::scoped_refptr<MediaStreamInterface> > streams_; 46 typedef std::vector<talk_base::scoped_refptr<MediaStreamInterface> >
47 StreamVector;
48 StreamVector streams_;
38 }; 49 };
39 50
40 const char MockPeerConnectionImpl::kDummyOffer[] = "dummy offer"; 51 const char MockPeerConnectionImpl::kDummyOffer[] = "dummy offer";
52 const char MockPeerConnectionImpl::kDummyAnswer[] = "dummy answer";
41 53
42 MockPeerConnectionImpl::MockPeerConnectionImpl( 54 MockPeerConnectionImpl::MockPeerConnectionImpl(
43 MockMediaStreamDependencyFactory* factory) 55 MockMediaStreamDependencyFactory* factory)
44 : dependency_factory_(factory), 56 : dependency_factory_(factory),
45 local_streams_(new talk_base::RefCountedObject<MockStreamCollection>), 57 local_streams_(new talk_base::RefCountedObject<MockStreamCollection>),
46 remote_streams_(new talk_base::RefCountedObject<MockStreamCollection>), 58 remote_streams_(new talk_base::RefCountedObject<MockStreamCollection>),
47 hint_audio_(false), 59 hint_audio_(false),
48 hint_video_(false), 60 hint_video_(false),
49 action_(kAnswer), 61 action_(kAnswer),
50 ice_options_(kOnlyRelay), 62 ice_options_(kOnlyRelay),
51 ready_state_(kNew) { 63 sdp_mline_index_(-1),
64 ready_state_(kNew),
65 ice_state_(kIceNew) {
52 } 66 }
53 67
54 MockPeerConnectionImpl::~MockPeerConnectionImpl() {} 68 MockPeerConnectionImpl::~MockPeerConnectionImpl() {}
55 69
56 talk_base::scoped_refptr<StreamCollectionInterface> 70 talk_base::scoped_refptr<StreamCollectionInterface>
57 MockPeerConnectionImpl::local_streams() { 71 MockPeerConnectionImpl::local_streams() {
58 return local_streams_; 72 return local_streams_;
59 } 73 }
60 74
61 talk_base::scoped_refptr<StreamCollectionInterface> 75 talk_base::scoped_refptr<StreamCollectionInterface>
(...skipping 13 matching lines...) Expand all
75 DCHECK(stream_label_.empty()); 89 DCHECK(stream_label_.empty());
76 stream_label_ = local_stream->label(); 90 stream_label_ = local_stream->label();
77 local_streams_->AddStream(local_stream); 91 local_streams_->AddStream(local_stream);
78 return true; 92 return true;
79 } 93 }
80 94
81 void MockPeerConnectionImpl::RemoveStream( 95 void MockPeerConnectionImpl::RemoveStream(
82 MediaStreamInterface* local_stream) { 96 MediaStreamInterface* local_stream) {
83 DCHECK_EQ(stream_label_, local_stream->label()); 97 DCHECK_EQ(stream_label_, local_stream->label());
84 stream_label_.clear(); 98 stream_label_.clear();
99 local_streams_->RemoveStream(local_stream);
85 } 100 }
86 101
87 MockPeerConnectionImpl::ReadyState MockPeerConnectionImpl::ready_state() { 102 MockPeerConnectionImpl::ReadyState MockPeerConnectionImpl::ready_state() {
88 return ready_state_; 103 return ready_state_;
89 } 104 }
90 105
91 bool MockPeerConnectionImpl::StartIce(IceOptions options) { 106 bool MockPeerConnectionImpl::StartIce(IceOptions options) {
92 ice_options_ = options; 107 ice_options_ = options;
93 return true; 108 return true;
94 } 109 }
(...skipping 25 matching lines...) Expand all
120 bool MockPeerConnectionImpl::SetRemoteDescription( 135 bool MockPeerConnectionImpl::SetRemoteDescription(
121 Action action, 136 Action action,
122 webrtc::SessionDescriptionInterface* desc) { 137 webrtc::SessionDescriptionInterface* desc) {
123 action_ = action; 138 action_ = action;
124 remote_desc_.reset(desc); 139 remote_desc_.reset(desc);
125 return desc->ToString(&description_sdp_); 140 return desc->ToString(&description_sdp_);
126 } 141 }
127 142
128 bool MockPeerConnectionImpl::ProcessIceMessage( 143 bool MockPeerConnectionImpl::ProcessIceMessage(
129 const webrtc::IceCandidateInterface* ice_candidate) { 144 const webrtc::IceCandidateInterface* ice_candidate) {
130 sdp_mid_ = ice_candidate->sdp_mid(); 145 return AddIceCandidate(ice_candidate);
131 sdp_mline_index_ = ice_candidate->sdp_mline_index();
132 return ice_candidate->ToString(&ice_sdp_);
133 } 146 }
134 147
135 const webrtc::SessionDescriptionInterface* 148 const webrtc::SessionDescriptionInterface*
136 MockPeerConnectionImpl::local_description() const { 149 MockPeerConnectionImpl::local_description() const {
137 return local_desc_.get(); 150 return local_desc_.get();
138 } 151 }
139 152
140 const webrtc::SessionDescriptionInterface* 153 const webrtc::SessionDescriptionInterface*
141 MockPeerConnectionImpl::remote_description() const { 154 MockPeerConnectionImpl::remote_description() const {
142 return remote_desc_.get(); 155 return remote_desc_.get();
143 } 156 }
144 157
145 void MockPeerConnectionImpl::AddRemoteStream(MediaStreamInterface* stream) { 158 void MockPeerConnectionImpl::AddRemoteStream(MediaStreamInterface* stream) {
146 remote_streams_->AddStream(stream); 159 remote_streams_->AddStream(stream);
147 } 160 }
148 161
149 void MockPeerConnectionImpl::CreateOffer( 162 void MockPeerConnectionImpl::CreateOffer(
150 CreateSessionDescriptionObserver* observer, 163 CreateSessionDescriptionObserver* observer,
151 const MediaConstraintsInterface* constraints) { 164 const MediaConstraintsInterface* constraints) {
152 NOTIMPLEMENTED(); 165 DCHECK(observer);
166 created_sessiondescription_.reset(
167 dependency_factory_->CreateSessionDescription(kDummyOffer));
153 } 168 }
154 169
155 void MockPeerConnectionImpl::CreateAnswer( 170 void MockPeerConnectionImpl::CreateAnswer(
156 CreateSessionDescriptionObserver* observer, 171 CreateSessionDescriptionObserver* observer,
157 const MediaConstraintsInterface* constraints) { 172 const MediaConstraintsInterface* constraints) {
158 NOTIMPLEMENTED(); 173 DCHECK(observer);
174 created_sessiondescription_.reset(
175 dependency_factory_->CreateSessionDescription(kDummyAnswer));
159 } 176 }
160 177
161 void MockPeerConnectionImpl::SetLocalDescription( 178 void MockPeerConnectionImpl::SetLocalDescription(
162 SetSessionDescriptionObserver* observer, 179 SetSessionDescriptionObserver* observer,
163 SessionDescriptionInterface* desc) { 180 SessionDescriptionInterface* desc) {
164 NOTIMPLEMENTED(); 181 desc->ToString(&description_sdp_);
182 local_desc_.reset(desc);
165 } 183 }
166 184
167 void MockPeerConnectionImpl::SetRemoteDescription( 185 void MockPeerConnectionImpl::SetRemoteDescription(
168 SetSessionDescriptionObserver* observer, 186 SetSessionDescriptionObserver* observer,
169 SessionDescriptionInterface* desc) { 187 SessionDescriptionInterface* desc) {
170 NOTIMPLEMENTED(); 188 desc->ToString(&description_sdp_);
189 remote_desc_.reset(desc);
171 } 190 }
172 191
173 bool MockPeerConnectionImpl::UpdateIce( 192 bool MockPeerConnectionImpl::UpdateIce(
174 const IceServers& configuration, 193 const IceServers& configuration,
175 const MediaConstraintsInterface* constraints) { 194 const MediaConstraintsInterface* constraints) {
176 NOTIMPLEMENTED(); 195 return true;
177 return false;
178 } 196 }
179 197
180 bool MockPeerConnectionImpl::AddIceCandidate( 198 bool MockPeerConnectionImpl::AddIceCandidate(
181 const IceCandidateInterface* candidate) { 199 const IceCandidateInterface* candidate) {
182 NOTIMPLEMENTED(); 200 sdp_mid_ = candidate->sdp_mid();
183 return false; 201 sdp_mline_index_ = candidate->sdp_mline_index();
202 return candidate->ToString(&ice_sdp_);
184 } 203 }
185 204
186 PeerConnectionInterface::IceState MockPeerConnectionImpl::ice_state() { 205 PeerConnectionInterface::IceState MockPeerConnectionImpl::ice_state() {
187 NOTIMPLEMENTED(); 206 return ice_state_;
188 return kIceNew;
189 } 207 }
190 208
191 } // namespace webrtc 209 } // namespace webrtc
OLDNEW
« no previous file with comments | « content/renderer/media/mock_peer_connection_impl.h ('k') | content/renderer/media/mock_web_peer_connection_handler_client.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698