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

Unified Diff: components/arc/net/arc_net_host_impl.cc

Issue 2347293002: arc: Add InstanceHelper::GetInstanceForMethod() (Closed)
Patch Set: Addressed feedback Created 4 years, 3 months 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: components/arc/net/arc_net_host_impl.cc
diff --git a/components/arc/net/arc_net_host_impl.cc b/components/arc/net/arc_net_host_impl.cc
index 09caeb9c66c59b912175ddb08bfb8731a2972c43..22ca5abae2b5551caa8ea502e3820642f6d3d068 100644
--- a/components/arc/net/arc_net_host_impl.cc
+++ b/components/arc/net/arc_net_host_impl.cc
@@ -27,7 +27,10 @@
namespace {
-const int kGetNetworksListLimit = 100;
+constexpr int kGetNetworksListLimit = 100;
+constexpr uint32_t kDefaultMinInstanceVersion = 0;
+constexpr uint32_t kDefaultNetworkChangedMinInstanceVersion = 2;
+constexpr uint32_t kWifiEnabledStateChanged = 3;
chromeos::NetworkStateHandler* GetStateHandler() {
return chromeos::NetworkHandler::Get()->network_state_handler();
@@ -572,16 +575,12 @@ void ArcNetHostImpl::StartScan() {
}
void ArcNetHostImpl::ScanCompleted(const chromeos::DeviceState* /*unused*/) {
- if (!arc_bridge_service()->net()->instance()) {
- VLOG(2) << "NetInstance not ready yet";
+ auto* net_instance = arc_bridge_service()->net()->GetInstanceForVersion(
+ kDefaultMinInstanceVersion, "ScanCompleted");
Yusuke Sato 2016/09/17 01:38:57 nit: ScanCompleted has [MinVersion=1] but version
Luis Héctor Chávez 2016/09/17 01:56:11 Done.
+ if (!net_instance)
return;
- }
- if (arc_bridge_service()->net()->version() < 1) {
- VLOG(1) << "NetInstance does not support ScanCompleted.";
- return;
- }
- arc_bridge_service()->net()->instance()->ScanCompleted();
+ net_instance->ScanCompleted();
}
void ArcNetHostImpl::GetDefaultNetwork(
@@ -605,29 +604,28 @@ void ArcNetHostImpl::GetDefaultNetwork(
void ArcNetHostImpl::DefaultNetworkSuccessCallback(
const std::string& service_path,
const base::DictionaryValue& dictionary) {
- if (!arc_bridge_service()->net()->instance()) {
- VLOG(2) << "NetInstance is null.";
+ auto* net_instance = arc_bridge_service()->net()->GetInstanceForVersion(
+ kDefaultMinInstanceVersion, "DefaultNetworkChanged");
Yusuke Sato 2016/09/17 01:38:57 Ok, then could you document why kDefaultMinInstanc
Luis Héctor Chávez 2016/09/17 01:56:11 Oh there was a bug here! This should have been kDe
+ if (!net_instance)
return;
- }
- arc_bridge_service()->net()->instance()->DefaultNetworkChanged(
- TranslateONCConfiguration(&dictionary),
- TranslateONCConfiguration(&dictionary));
+
+ net_instance->DefaultNetworkChanged(TranslateONCConfiguration(&dictionary),
+ TranslateONCConfiguration(&dictionary));
}
void ArcNetHostImpl::DefaultNetworkChanged(
const chromeos::NetworkState* network) {
- if (arc_bridge_service()->net()->version() < 2) {
- VLOG(1) << "ArcBridgeService does not support DefaultNetworkChanged.";
- return;
- }
-
if (!network) {
VLOG(1) << "No default network";
- arc_bridge_service()->net()->instance()->DefaultNetworkChanged(nullptr,
- nullptr);
+ net_instance->DefaultNetworkChanged(nullptr, nullptr);
Yusuke Sato 2016/09/17 01:38:57 nit: this won't compile :) I meant something like
Luis Héctor Chávez 2016/09/17 01:56:11 Yeah, realized this too late :P Done.
return;
}
+ auto* net_instance = arc_bridge_service()->net()->GetInstanceForVersion(
+ kDefaultNetworkChangedMinInstanceVersion, "DefaultNetworkChanged");
Yusuke Sato 2016/09/17 01:38:57 ..and then, why this one was okay to use kDefaultN
Luis Héctor Chávez 2016/09/17 01:56:11 Both should use it.
+ if (!net_instance)
+ return;
+
VLOG(1) << "New default network: " << network->path();
std::string user_id_hash = chromeos::LoginState::Get()->primary_user_hash();
GetManagedConfigurationHandler()->GetProperties(
@@ -638,14 +636,14 @@ void ArcNetHostImpl::DefaultNetworkChanged(
}
void ArcNetHostImpl::DeviceListChanged() {
- if (arc_bridge_service()->net()->version() < 3) {
- VLOG(1) << "ArcBridgeService does not support DeviceListChanged.";
+ auto* net_instance = arc_bridge_service()->net()->GetInstanceForVersion(
+ kWifiEnabledStateChanged, "WifiEnabledStateChanged");
+ if (!net_instance)
return;
- }
bool is_enabled = GetStateHandler()->IsTechnologyEnabled(
chromeos::NetworkTypePattern::WiFi());
- arc_bridge_service()->net()->instance()->WifiEnabledStateChanged(is_enabled);
+ net_instance->WifiEnabledStateChanged(is_enabled);
}
void ArcNetHostImpl::OnShuttingDown() {

Powered by Google App Engine
This is Rietveld 408576698