Index: chromeos/components/tether/tether_network_disconnection_handler.cc |
diff --git a/chromeos/components/tether/tether_network_disconnection_handler.cc b/chromeos/components/tether/tether_network_disconnection_handler.cc |
index 71d273db788d2ba6ad697a80cc67b253a15becf4..6c2cb35a520b42894bde620baea81457e2a2f0f2 100644 |
--- a/chromeos/components/tether/tether_network_disconnection_handler.cc |
+++ b/chromeos/components/tether/tether_network_disconnection_handler.cc |
@@ -4,7 +4,11 @@ |
#include "chromeos/components/tether/tether_network_disconnection_handler.h" |
+#include "base/bind.h" |
+#include "base/bind_helpers.h" |
+#include "base/macros.h" |
#include "base/memory/ptr_util.h" |
+#include "chromeos/components/tether/network_configuration_remover.h" |
#include "chromeos/network/network_handler.h" |
#include "chromeos/network/network_state.h" |
#include "chromeos/network/network_state_handler.h" |
@@ -15,15 +19,12 @@ namespace chromeos { |
namespace tether { |
TetherNetworkDisconnectionHandler::TetherNetworkDisconnectionHandler( |
- ActiveHost* active_host) |
- : TetherNetworkDisconnectionHandler( |
- active_host, |
- NetworkHandler::Get()->network_state_handler()) {} |
- |
-TetherNetworkDisconnectionHandler::TetherNetworkDisconnectionHandler( |
ActiveHost* active_host, |
- NetworkStateHandler* network_state_handler) |
- : active_host_(active_host), network_state_handler_(network_state_handler) { |
+ NetworkStateHandler* network_state_handler, |
+ NetworkConfigurationRemover* network_configuration_remover) |
+ : active_host_(active_host), |
+ network_state_handler_(network_state_handler), |
+ network_configuration_remover_(network_configuration_remover) { |
network_state_handler_->AddObserver(this, FROM_HERE); |
} |
@@ -39,9 +40,11 @@ void TetherNetworkDisconnectionHandler::NetworkConnectionStateChanged( |
!network->IsConnectedState()) { |
PA_LOG(INFO) << "Connection to active host (Wi-Fi network GUID " |
<< network->guid() << ") has been lost."; |
- active_host_->SetActiveHostDisconnected(); |
- // TODO(hansberry): Remove Wi-Fi network from "known" networks. |
+ network_configuration_remover_->RemoveNetworkConfiguration( |
+ active_host_->GetWifiNetworkGuid()); |
+ |
+ active_host_->SetActiveHostDisconnected(); |
} |
} |