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

Side by Side Diff: webrtc/p2p/base/faketransportcontroller.h

Issue 1691673002: Remove GetTransport() from TransportChannelImpl (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: Restore deleted P2PTransportChannel constructor (and mark deprecated) to not break Chromium Created 4 years, 10 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
« no previous file with comments | « webrtc/p2p/base/dtlstransportchannel.cc ('k') | webrtc/p2p/base/p2ptransport.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright 2009 The WebRTC Project Authors. All rights reserved. 2 * Copyright 2009 The WebRTC Project Authors. All rights reserved.
3 * 3 *
4 * Use of this source code is governed by a BSD-style license 4 * Use of this source code is governed by a BSD-style license
5 * that can be found in the LICENSE file in the root of the source 5 * that can be found in the LICENSE file in the root of the source
6 * tree. An additional intellectual property rights grant can be found 6 * tree. An additional intellectual property rights grant can be found
7 * in the file PATENTS. All contributing project authors may 7 * in the file PATENTS. All contributing project authors may
8 * be found in the AUTHORS file in the root of the source tree. 8 * be found in the AUTHORS file in the root of the source tree.
9 */ 9 */
10 10
(...skipping 27 matching lines...) Expand all
38 }; 38 };
39 } // namespace 39 } // namespace
40 40
41 // Fake transport channel class, which can be passed to anything that needs a 41 // Fake transport channel class, which can be passed to anything that needs a
42 // transport channel. Can be informed of another FakeTransportChannel via 42 // transport channel. Can be informed of another FakeTransportChannel via
43 // SetDestination. 43 // SetDestination.
44 // TODO(hbos): Move implementation to .cc file, this and other classes in file. 44 // TODO(hbos): Move implementation to .cc file, this and other classes in file.
45 class FakeTransportChannel : public TransportChannelImpl, 45 class FakeTransportChannel : public TransportChannelImpl,
46 public rtc::MessageHandler { 46 public rtc::MessageHandler {
47 public: 47 public:
48 explicit FakeTransportChannel(Transport* transport, 48 explicit FakeTransportChannel(const std::string& name, int component)
49 const std::string& name,
50 int component)
51 : TransportChannelImpl(name, component), 49 : TransportChannelImpl(name, component),
52 transport_(transport),
53 dtls_fingerprint_("", nullptr, 0) {} 50 dtls_fingerprint_("", nullptr, 0) {}
54 ~FakeTransportChannel() { Reset(); } 51 ~FakeTransportChannel() { Reset(); }
55 52
56 uint64_t IceTiebreaker() const { return tiebreaker_; } 53 uint64_t IceTiebreaker() const { return tiebreaker_; }
57 IceMode remote_ice_mode() const { return remote_ice_mode_; } 54 IceMode remote_ice_mode() const { return remote_ice_mode_; }
58 const std::string& ice_ufrag() const { return ice_ufrag_; } 55 const std::string& ice_ufrag() const { return ice_ufrag_; }
59 const std::string& ice_pwd() const { return ice_pwd_; } 56 const std::string& ice_pwd() const { return ice_pwd_; }
60 const std::string& remote_ice_ufrag() const { return remote_ice_ufrag_; } 57 const std::string& remote_ice_ufrag() const { return remote_ice_ufrag_; }
61 const std::string& remote_ice_pwd() const { return remote_ice_pwd_; } 58 const std::string& remote_ice_pwd() const { return remote_ice_pwd_; }
62 const rtc::SSLFingerprint& dtls_fingerprint() const { 59 const rtc::SSLFingerprint& dtls_fingerprint() const {
63 return dtls_fingerprint_; 60 return dtls_fingerprint_;
64 } 61 }
65 62
66 // If async, will send packets by "Post"-ing to message queue instead of 63 // If async, will send packets by "Post"-ing to message queue instead of
67 // synchronously "Send"-ing. 64 // synchronously "Send"-ing.
68 void SetAsync(bool async) { async_ = async; } 65 void SetAsync(bool async) { async_ = async; }
69 66
70 Transport* GetTransport() override { return transport_; }
71
72 TransportChannelState GetState() const override { 67 TransportChannelState GetState() const override {
73 if (connection_count_ == 0) { 68 if (connection_count_ == 0) {
74 return had_connection_ ? TransportChannelState::STATE_FAILED 69 return had_connection_ ? TransportChannelState::STATE_FAILED
75 : TransportChannelState::STATE_INIT; 70 : TransportChannelState::STATE_INIT;
76 } 71 }
77 72
78 if (connection_count_ == 1) { 73 if (connection_count_ == 1) {
79 return TransportChannelState::STATE_COMPLETED; 74 return TransportChannelState::STATE_COMPLETED;
80 } 75 }
81 76
(...skipping 224 matching lines...) Expand 10 before | Expand all | Expand 10 after
306 301
307 void set_ssl_max_protocol_version(rtc::SSLProtocolVersion version) { 302 void set_ssl_max_protocol_version(rtc::SSLProtocolVersion version) {
308 ssl_max_version_ = version; 303 ssl_max_version_ = version;
309 } 304 }
310 rtc::SSLProtocolVersion ssl_max_protocol_version() const { 305 rtc::SSLProtocolVersion ssl_max_protocol_version() const {
311 return ssl_max_version_; 306 return ssl_max_version_;
312 } 307 }
313 308
314 private: 309 private:
315 enum State { STATE_INIT, STATE_CONNECTING, STATE_CONNECTED }; 310 enum State { STATE_INIT, STATE_CONNECTING, STATE_CONNECTED };
316 Transport* transport_;
317 FakeTransportChannel* dest_ = nullptr; 311 FakeTransportChannel* dest_ = nullptr;
318 State state_ = STATE_INIT; 312 State state_ = STATE_INIT;
319 bool async_ = false; 313 bool async_ = false;
320 Candidates remote_candidates_; 314 Candidates remote_candidates_;
321 rtc::scoped_refptr<rtc::RTCCertificate> local_cert_; 315 rtc::scoped_refptr<rtc::RTCCertificate> local_cert_;
322 rtc::FakeSSLCertificate* remote_cert_ = nullptr; 316 rtc::FakeSSLCertificate* remote_cert_ = nullptr;
323 bool do_dtls_ = false; 317 bool do_dtls_ = false;
324 std::vector<int> srtp_ciphers_; 318 std::vector<int> srtp_ciphers_;
325 int chosen_crypto_suite_ = rtc::SRTP_INVALID_CRYPTO_SUITE; 319 int chosen_crypto_suite_ = rtc::SRTP_INVALID_CRYPTO_SUITE;
326 int receiving_timeout_ = -1; 320 int receiving_timeout_ = -1;
(...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after
407 } 401 }
408 402
409 using Transport::local_description; 403 using Transport::local_description;
410 using Transport::remote_description; 404 using Transport::remote_description;
411 405
412 protected: 406 protected:
413 TransportChannelImpl* CreateTransportChannel(int component) override { 407 TransportChannelImpl* CreateTransportChannel(int component) override {
414 if (channels_.find(component) != channels_.end()) { 408 if (channels_.find(component) != channels_.end()) {
415 return nullptr; 409 return nullptr;
416 } 410 }
417 FakeTransportChannel* channel = 411 FakeTransportChannel* channel = new FakeTransportChannel(name(), component);
418 new FakeTransportChannel(this, name(), component);
419 channel->set_ssl_max_protocol_version(ssl_max_version_); 412 channel->set_ssl_max_protocol_version(ssl_max_version_);
420 channel->SetAsync(async_); 413 channel->SetAsync(async_);
421 SetChannelDestination(component, channel); 414 SetChannelDestination(component, channel);
422 channels_[component] = channel; 415 channels_[component] = channel;
423 return channel; 416 return channel;
424 } 417 }
425 418
426 void DestroyTransportChannel(TransportChannelImpl* channel) override { 419 void DestroyTransportChannel(TransportChannelImpl* channel) override {
427 channels_.erase(channel->component()); 420 channels_.erase(channel->component());
428 delete channel; 421 delete channel;
(...skipping 105 matching lines...) Expand 10 before | Expand all | Expand 10 after
534 } 527 }
535 } 528 }
536 529
537 private: 530 private:
538 bool fail_create_channel_; 531 bool fail_create_channel_;
539 }; 532 };
540 533
541 } // namespace cricket 534 } // namespace cricket
542 535
543 #endif // WEBRTC_P2P_BASE_FAKETRANSPORTCONTROLLER_H_ 536 #endif // WEBRTC_P2P_BASE_FAKETRANSPORTCONTROLLER_H_
OLDNEW
« no previous file with comments | « webrtc/p2p/base/dtlstransportchannel.cc ('k') | webrtc/p2p/base/p2ptransport.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698