| Index: net/base/network_change_notifier.cc
|
| diff --git a/net/base/network_change_notifier.cc b/net/base/network_change_notifier.cc
|
| index bd47e3ce9d7be82c04b38b19080562646382fd06..63b68a24b114101388fe22c6dc5ccf230e6ba417 100644
|
| --- a/net/base/network_change_notifier.cc
|
| +++ b/net/base/network_change_notifier.cc
|
| @@ -742,7 +742,7 @@ void NetworkChangeNotifier::ShutdownHistogramWatcher() {
|
| void NetworkChangeNotifier::FinalizingMetricsLogRecord() {
|
| if (!g_network_change_notifier)
|
| return;
|
| - g_network_change_notifier->OnFinalizingMetricsLogRecord();
|
| + g_network_change_notifier->NotifyObserversOfMetricsOnFinalize();
|
| }
|
|
|
| // static
|
| @@ -916,6 +916,12 @@ void NetworkChangeNotifier::RemoveNetworkObserver(NetworkObserver* observer) {
|
| }
|
| }
|
|
|
| +void NetworkChangeNotifier::AddMetricsObserver(MetricsObserver* observer) {
|
| + if (g_network_change_notifier) {
|
| + g_network_change_notifier->metrics_observer_list_->AddObserver(observer);
|
| + }
|
| +}
|
| +
|
| // static
|
| void NetworkChangeNotifier::NotifyObserversOfIPAddressChangeForTests() {
|
| if (g_network_change_notifier)
|
| @@ -985,6 +991,8 @@ NetworkChangeNotifier::NetworkChangeNotifier(
|
| base::ObserverListBase<MaxBandwidthObserver>::NOTIFY_EXISTING_ONLY)),
|
| network_observer_list_(new base::ObserverListThreadSafe<NetworkObserver>(
|
| base::ObserverListBase<NetworkObserver>::NOTIFY_EXISTING_ONLY)),
|
| + metrics_observer_list_(new base::ObserverListThreadSafe<MetricsObserver>(
|
| + base::ObserverListBase<MetricsObserver>::NOTIFY_EXISTING_ONLY)),
|
| network_state_(new NetworkState()),
|
| network_change_calculator_(new NetworkChangeCalculator(params)) {
|
| DCHECK(!g_network_change_notifier);
|
| @@ -1037,6 +1045,13 @@ NetworkChangeNotifier::GetCurrentDefaultNetwork() const {
|
| return kInvalidNetworkHandle;
|
| }
|
|
|
| +void NetworkChangeNotifier::OnFinalizingMetricsLogRecord() {
|
| + if (g_network_change_notifier &&
|
| + !NetworkChangeNotifier::test_notifications_only_) {
|
| + g_network_change_notifier->NotifyObserversOfMetricsOnFinalize();
|
| + }
|
| +}
|
| +
|
| // static
|
| void NetworkChangeNotifier::NotifyObserversOfIPAddressChange() {
|
| if (g_network_change_notifier &&
|
| @@ -1157,6 +1172,11 @@ void NetworkChangeNotifier::NotifyObserversOfMaxBandwidthChangeImpl(
|
| max_bandwidth_mbps, type);
|
| }
|
|
|
| +void NetworkChangeNotifier::NotifyObserversOfMetricsOnFinalize() {
|
| + metrics_observer_list_->Notify(FROM_HERE,
|
| + &MetricsObserver::OnMetricsFinalize);
|
| +}
|
| +
|
| void NetworkChangeNotifier::NotifyObserversOfSpecificNetworkChangeImpl(
|
| NetworkChangeType type,
|
| NetworkHandle network) {
|
|
|