Signal Network route change in fake ice.
Fake Ice currently does not signal the network route change. Also, it is not aware of the network thread, so added a setter for a network thread. Bug: None Change-Id: I25326282f32d36229422eca7368b53ee7b52ec72 Reviewed-on: https://webrtc-review.googlesource.com/c/110363 Commit-Queue: Peter Slatala <psla@webrtc.org> Reviewed-by: Qingsi Wang <qingsi@webrtc.org> Reviewed-by: Bjorn Mellem <mellem@webrtc.org> Cr-Commit-Position: refs/heads/master@{#25585}
This commit is contained in:

committed by
Commit Bot

parent
d95b0a2fbd
commit
7127f342a9
@ -23,8 +23,13 @@ namespace cricket {
|
|||||||
|
|
||||||
class FakeIceTransport : public IceTransportInternal {
|
class FakeIceTransport : public IceTransportInternal {
|
||||||
public:
|
public:
|
||||||
explicit FakeIceTransport(const std::string& name, int component)
|
explicit FakeIceTransport(const std::string& name,
|
||||||
: name_(name), component_(component) {}
|
int component,
|
||||||
|
rtc::Thread* network_thread = nullptr)
|
||||||
|
: name_(name),
|
||||||
|
component_(component),
|
||||||
|
network_thread_(network_thread ? network_thread
|
||||||
|
: rtc::Thread::Current()) {}
|
||||||
~FakeIceTransport() override {
|
~FakeIceTransport() override {
|
||||||
if (dest_ && dest_->dest_ == this) {
|
if (dest_ && dest_->dest_ == this) {
|
||||||
dest_->dest_ = nullptr;
|
dest_->dest_ = nullptr;
|
||||||
@ -239,6 +244,8 @@ class FakeIceTransport : public IceTransportInternal {
|
|||||||
}
|
}
|
||||||
void SetNetworkRoute(absl::optional<rtc::NetworkRoute> network_route) {
|
void SetNetworkRoute(absl::optional<rtc::NetworkRoute> network_route) {
|
||||||
network_route_ = network_route;
|
network_route_ = network_route;
|
||||||
|
network_thread_->Invoke<void>(
|
||||||
|
RTC_FROM_HERE, [this] { SignalNetworkRouteChanged(network_route_); });
|
||||||
}
|
}
|
||||||
|
|
||||||
private:
|
private:
|
||||||
@ -295,6 +302,7 @@ class FakeIceTransport : public IceTransportInternal {
|
|||||||
absl::optional<rtc::NetworkRoute> network_route_;
|
absl::optional<rtc::NetworkRoute> network_route_;
|
||||||
std::map<rtc::Socket::Option, int> socket_options_;
|
std::map<rtc::Socket::Option, int> socket_options_;
|
||||||
rtc::CopyOnWriteBuffer last_sent_packet_;
|
rtc::CopyOnWriteBuffer last_sent_packet_;
|
||||||
|
rtc::Thread* const network_thread_;
|
||||||
};
|
};
|
||||||
|
|
||||||
} // namespace cricket
|
} // namespace cricket
|
||||||
|
Reference in New Issue
Block a user