WebRTC-DeprecateGlobalFieldTrialString/Enabled/ - part 11/inf
convert rtc_base/network and collateral. This also remove last usage of system_wrappers/field_trials in p2p/...Yay! Bug: webrtc:10335 Change-Id: Ie8507b1f52bf7f3067e9b4bf8c81a825e4644fda Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/256640 Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org> Reviewed-by: Harald Alvestrand <hta@webrtc.org> Commit-Queue: Jonas Oreland <jonaso@webrtc.org> Cr-Commit-Position: refs/heads/main@{#36357}
This commit is contained in:
committed by
WebRTC LUCI CQ
parent
342c511007
commit
c06fe8b04e
@ -29,8 +29,10 @@
|
||||
#include "absl/algorithm/container.h"
|
||||
#include "absl/strings/match.h"
|
||||
#include "absl/strings/string_view.h"
|
||||
#include "api/transport/field_trial_based_config.h"
|
||||
#include "rtc_base/checks.h"
|
||||
#include "rtc_base/logging.h"
|
||||
#include "rtc_base/memory/always_valid_pointer.h"
|
||||
#include "rtc_base/network_monitor.h"
|
||||
#include "rtc_base/socket.h" // includes something that makes windows happy
|
||||
#include "rtc_base/string_encode.h"
|
||||
@ -38,7 +40,6 @@
|
||||
#include "rtc_base/strings/string_builder.h"
|
||||
#include "rtc_base/task_utils/to_queued_task.h"
|
||||
#include "rtc_base/thread.h"
|
||||
#include "system_wrappers/include/field_trial.h"
|
||||
|
||||
namespace rtc {
|
||||
namespace {
|
||||
@ -280,10 +281,13 @@ webrtc::MdnsResponderInterface* NetworkManager::GetMdnsResponder() const {
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
NetworkManagerBase::NetworkManagerBase()
|
||||
NetworkManagerBase::NetworkManagerBase(
|
||||
const webrtc::WebRtcKeyValueConfig* field_trials)
|
||||
: enumeration_permission_(NetworkManager::ENUMERATION_ALLOWED),
|
||||
signal_network_preference_change_(webrtc::field_trial::IsEnabled(
|
||||
"WebRTC-SignalNetworkPreferenceChange")) {}
|
||||
signal_network_preference_change_(
|
||||
field_trials
|
||||
? field_trials->IsEnabled("WebRTC-SignalNetworkPreferenceChange")
|
||||
: false) {}
|
||||
|
||||
NetworkManagerBase::~NetworkManagerBase() {
|
||||
for (const auto& kv : networks_map_) {
|
||||
@ -508,25 +512,17 @@ bool NetworkManagerBase::IsVpnMacAddress(
|
||||
return false;
|
||||
}
|
||||
|
||||
BasicNetworkManager::BasicNetworkManager()
|
||||
: BasicNetworkManager(nullptr, nullptr) {}
|
||||
|
||||
BasicNetworkManager::BasicNetworkManager(SocketFactory* socket_factory)
|
||||
: BasicNetworkManager(nullptr, socket_factory) {}
|
||||
|
||||
BasicNetworkManager::BasicNetworkManager(
|
||||
NetworkMonitorFactory* network_monitor_factory)
|
||||
: BasicNetworkManager(network_monitor_factory, nullptr) {}
|
||||
|
||||
BasicNetworkManager::BasicNetworkManager(
|
||||
NetworkMonitorFactory* network_monitor_factory,
|
||||
SocketFactory* socket_factory)
|
||||
: network_monitor_factory_(network_monitor_factory),
|
||||
SocketFactory* socket_factory,
|
||||
const webrtc::WebRtcKeyValueConfig* field_trials)
|
||||
: field_trials_(field_trials),
|
||||
network_monitor_factory_(network_monitor_factory),
|
||||
socket_factory_(socket_factory),
|
||||
allow_mac_based_ipv6_(
|
||||
webrtc::field_trial::IsEnabled("WebRTC-AllowMACBasedIPv6")),
|
||||
field_trials_->IsEnabled("WebRTC-AllowMACBasedIPv6")),
|
||||
bind_using_ifname_(
|
||||
!webrtc::field_trial::IsDisabled("WebRTC-BindUsingInterfaceName")) {}
|
||||
!field_trials_->IsDisabled("WebRTC-BindUsingInterfaceName")) {}
|
||||
|
||||
BasicNetworkManager::~BasicNetworkManager() {
|
||||
if (task_safety_flag_) {
|
||||
@ -936,7 +932,8 @@ void BasicNetworkManager::StartNetworkMonitor() {
|
||||
return;
|
||||
}
|
||||
if (!network_monitor_) {
|
||||
network_monitor_.reset(network_monitor_factory_->CreateNetworkMonitor());
|
||||
network_monitor_.reset(
|
||||
network_monitor_factory_->CreateNetworkMonitor(*field_trials_));
|
||||
if (!network_monitor_) {
|
||||
return;
|
||||
}
|
||||
@ -1057,24 +1054,6 @@ NetworkBindingResult BasicNetworkManager::BindSocketToNetwork(
|
||||
return network_monitor_->BindSocketToNetwork(socket_fd, address, if_name);
|
||||
}
|
||||
|
||||
Network::Network(absl::string_view name,
|
||||
absl::string_view desc,
|
||||
const IPAddress& prefix,
|
||||
int prefix_length)
|
||||
: name_(name),
|
||||
description_(desc),
|
||||
prefix_(prefix),
|
||||
prefix_length_(prefix_length),
|
||||
key_(MakeNetworkKey(name, prefix, prefix_length)),
|
||||
scope_id_(0),
|
||||
ignored_(false),
|
||||
type_(ADAPTER_TYPE_UNKNOWN),
|
||||
preference_(0),
|
||||
use_differentiated_cellular_costs_(webrtc::field_trial::IsEnabled(
|
||||
"WebRTC-UseDifferentiatedCellularCosts")),
|
||||
add_network_cost_to_vpn_(
|
||||
webrtc::field_trial::IsEnabled("WebRTC-AddNetworkCostToVpn")) {}
|
||||
|
||||
Network::Network(absl::string_view name,
|
||||
absl::string_view desc,
|
||||
const IPAddress& prefix,
|
||||
@ -1088,11 +1067,7 @@ Network::Network(absl::string_view name,
|
||||
scope_id_(0),
|
||||
ignored_(false),
|
||||
type_(type),
|
||||
preference_(0),
|
||||
use_differentiated_cellular_costs_(webrtc::field_trial::IsEnabled(
|
||||
"WebRTC-UseDifferentiatedCellularCosts")),
|
||||
add_network_cost_to_vpn_(
|
||||
webrtc::field_trial::IsEnabled("WebRTC-AddNetworkCostToVpn")) {}
|
||||
preference_(0) {}
|
||||
|
||||
Network::Network(const Network&) = default;
|
||||
|
||||
@ -1162,11 +1137,23 @@ webrtc::MdnsResponderInterface* Network::GetMdnsResponder() const {
|
||||
return mdns_responder_provider_->GetMdnsResponder();
|
||||
}
|
||||
|
||||
uint16_t Network::GetCost() const {
|
||||
uint16_t Network::GetCost(
|
||||
const webrtc::WebRtcKeyValueConfig* field_trials) const {
|
||||
return GetCost(
|
||||
*webrtc::AlwaysValidPointer<const webrtc::WebRtcKeyValueConfig,
|
||||
webrtc::FieldTrialBasedConfig>(field_trials));
|
||||
}
|
||||
|
||||
uint16_t Network::GetCost(
|
||||
const webrtc::WebRtcKeyValueConfig& field_trials) const {
|
||||
AdapterType type = IsVpn() ? underlying_type_for_vpn_ : type_;
|
||||
const bool use_differentiated_cellular_costs =
|
||||
field_trials.IsEnabled("WebRTC-UseDifferentiatedCellularCosts");
|
||||
const bool add_network_cost_to_vpn =
|
||||
field_trials.IsEnabled("WebRTC-AddNetworkCostToVpn");
|
||||
return ComputeNetworkCostByType(type, IsVpn(),
|
||||
use_differentiated_cellular_costs_,
|
||||
add_network_cost_to_vpn_);
|
||||
use_differentiated_cellular_costs,
|
||||
add_network_cost_to_vpn);
|
||||
}
|
||||
|
||||
// This is the inverse of ComputeNetworkCostByType().
|
||||
|
||||
Reference in New Issue
Block a user