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

Unified Diff: chrome/browser/chromeos/dom_ui/mobile_setup_ui.cc

Issue 4235005: Push for ers:... (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 10 years, 1 month 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/chromeos/dom_ui/mobile_setup_ui.cc
===================================================================
--- chrome/browser/chromeos/dom_ui/mobile_setup_ui.cc (revision 64886)
+++ chrome/browser/chromeos/dom_ui/mobile_setup_ui.cc (working copy)
@@ -124,10 +124,12 @@
};
// The handler for Javascript messages related to the "register" view.
-class MobileSetupHandler : public DOMMessageHandler,
- public chromeos::NetworkLibrary::Observer,
- public chromeos::NetworkLibrary::PropertyObserver,
- public base::SupportsWeakPtr<MobileSetupHandler> {
+class MobileSetupHandler
+ : public DOMMessageHandler,
+ public chromeos::NetworkLibrary::NetworkManagerObserver,
+ public chromeos::NetworkLibrary::NetworkObserver,
+ public base::SupportsWeakPtr<MobileSetupHandler> {
+
public:
explicit MobileSetupHandler(const std::string& service_path);
virtual ~MobileSetupHandler();
@@ -139,12 +141,11 @@
virtual DOMMessageHandler* Attach(DOMUI* dom_ui);
virtual void RegisterMessages();
- // NetworkLibrary::Observer implementation.
- virtual void NetworkChanged(chromeos::NetworkLibrary* obj);
- // NetworkLibrary::PropertyObserver implementation.
- virtual void PropertyChanged(const char* service_path,
- const char* key,
- const Value* value);
+ // NetworkLibrary::NetworkManagerObserver implementation.
+ virtual void OnNetworkManagerChanged(chromeos::NetworkLibrary* obj);
+ // NetworkLibrary::NetworkObserver implementation.
+ virtual void OnNetworkChanged(chromeos::NetworkLibrary* obj,
+ const chromeos::Network* network);
private:
typedef enum PlanActivationState {
@@ -328,8 +329,8 @@
MobileSetupHandler::~MobileSetupHandler() {
chromeos::NetworkLibrary* lib =
chromeos::CrosLibrary::Get()->GetNetworkLibrary();
- lib->RemoveObserver(this);
- lib->RemoveProperyObserver(this);
+ lib->RemoveNetworkManagerObserver(this);
+ lib->RemoveObserverForAllNetworks(this);
ReEnableOtherConnections();
}
@@ -352,34 +353,25 @@
NewCallback(this, &MobileSetupHandler::HandleSetTransactionStatus));
}
-void MobileSetupHandler::NetworkChanged(chromeos::NetworkLibrary* lib) {
+void MobileSetupHandler::OnNetworkManagerChanged(
+ chromeos::NetworkLibrary* cros) {
if (state_ == PLAN_ACTIVATION_PAGE_LOADING)
return;
+ // Note that even though we get here when the service has
+ // reappeared after disappearing earlier in the activation
+ // process, there's no need to re-establish the NetworkObserver,
+ // because the service path remains the same.
EvaluateCellularNetwork(GetCellularNetwork(service_path_));
}
-void MobileSetupHandler::PropertyChanged(const char* service_path,
- const char* key,
- const Value* value) {
-
+void MobileSetupHandler::OnNetworkChanged(chromeos::NetworkLibrary* cros,
+ const chromeos::Network* network) {
if (state_ == PLAN_ACTIVATION_PAGE_LOADING)
return;
- chromeos::CellularNetwork* network = GetCellularNetwork(service_path_);
- if (!network) {
- EvaluateCellularNetwork(NULL);
- return;
- }
- if (network->service_path() != service_path) {
- NOTREACHED();
- return;
- }
- std::string value_string;
- LOG(INFO) << "Cellular property change: " << key << " = " <<
- value_string.c_str();
-
- // TODO(zelidrag, ers): Remove this once we flip the notification machanism.
- chromeos::CrosLibrary::Get()->GetNetworkLibrary()->UpdateSystemInfo();
- EvaluateCellularNetwork(network);
+ DCHECK(network && network->type() == chromeos::TYPE_CELLULAR);
+ EvaluateCellularNetwork(
+ static_cast<chromeos::CellularNetwork*>(
+ const_cast<chromeos::Network*>(network)));
}
void MobileSetupHandler::HandleCloseTab(const ListValue* args) {
@@ -397,14 +389,12 @@
ChangeState(NULL, PLAN_ACTIVATION_ERROR, std::string());
return;
}
- chromeos::NetworkLibrary* lib = chromeos::CrosLibrary::Get()->
- GetNetworkLibrary();
- lib->RemoveObserver(this);
- lib->RemoveProperyObserver(this);
- // Start monitoring network and service property changes.
- lib->AddObserver(this);
- lib->AddProperyObserver(network->service_path().c_str(),
- this);
+ // Start monitoring network property changes.
+ chromeos::NetworkLibrary* lib =
+ chromeos::CrosLibrary::Get()->GetNetworkLibrary();
+ lib->AddNetworkManagerObserver(this);
+ lib->RemoveObserverForAllNetworks(this);
+ lib->AddNetworkObserver(network->service_path(), this);
ChangeState(network, PLAN_ACTIVATION_START, std::string());
EvaluateCellularNetwork(network);
}
@@ -581,8 +571,8 @@
network->set_auto_connect(true);
lib->SaveCellularNetwork(network);
}
- lib->RemoveObserver(this);
- lib->RemoveProperyObserver(this);
+ lib->RemoveNetworkManagerObserver(this);
+ lib->RemoveObserverForAllNetworks(this);
// Reactivate other types of connections if we have
// shut them down previously.
ReEnableOtherConnections();
« no previous file with comments | « chrome/browser/chromeos/dom_ui/internet_options_handler.cc ('k') | chrome/browser/chromeos/login/login_utils.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698