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

Side by Side Diff: components/arc/net/arc_net_host_impl.cc

Issue 2599673005: arc: Use GET_INTERFACE_FOR_METHOD macro (Closed)
Patch Set: Addressed feedback Created 3 years, 11 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 unified diff | Download patch
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "components/arc/net/arc_net_host_impl.h" 5 #include "components/arc/net/arc_net_host_impl.h"
6 6
7 #include <string> 7 #include <string>
8 #include <utility> 8 #include <utility>
9 #include <vector> 9 #include <vector>
10 10
(...skipping 10 matching lines...) Expand all
21 #include "chromeos/network/network_state.h" 21 #include "chromeos/network/network_state.h"
22 #include "chromeos/network/network_state_handler.h" 22 #include "chromeos/network/network_state_handler.h"
23 #include "chromeos/network/network_type_pattern.h" 23 #include "chromeos/network/network_type_pattern.h"
24 #include "chromeos/network/network_util.h" 24 #include "chromeos/network/network_util.h"
25 #include "chromeos/network/onc/onc_utils.h" 25 #include "chromeos/network/onc/onc_utils.h"
26 #include "components/arc/arc_bridge_service.h" 26 #include "components/arc/arc_bridge_service.h"
27 27
28 namespace { 28 namespace {
29 29
30 constexpr int kGetNetworksListLimit = 100; 30 constexpr int kGetNetworksListLimit = 100;
31 constexpr uint32_t kScanCompletedMinInstanceVersion = 1;
32 constexpr uint32_t kDefaultNetworkChangedMinInstanceVersion = 2;
33 constexpr uint32_t kWifiEnabledStateChanged = 3;
34 31
35 chromeos::NetworkStateHandler* GetStateHandler() { 32 chromeos::NetworkStateHandler* GetStateHandler() {
36 return chromeos::NetworkHandler::Get()->network_state_handler(); 33 return chromeos::NetworkHandler::Get()->network_state_handler();
37 } 34 }
38 35
39 chromeos::ManagedNetworkConfigurationHandler* GetManagedConfigurationHandler() { 36 chromeos::ManagedNetworkConfigurationHandler* GetManagedConfigurationHandler() {
40 return chromeos::NetworkHandler::Get() 37 return chromeos::NetworkHandler::Get()
41 ->managed_network_configuration_handler(); 38 ->managed_network_configuration_handler();
42 } 39 }
43 40
(...skipping 256 matching lines...) Expand 10 before | Expand all | Expand 10 after
300 if (observing_network_state_) { 297 if (observing_network_state_) {
301 GetStateHandler()->RemoveObserver(this, FROM_HERE); 298 GetStateHandler()->RemoveObserver(this, FROM_HERE);
302 } 299 }
303 } 300 }
304 301
305 void ArcNetHostImpl::OnInstanceReady() { 302 void ArcNetHostImpl::OnInstanceReady() {
306 DCHECK(thread_checker_.CalledOnValidThread()); 303 DCHECK(thread_checker_.CalledOnValidThread());
307 304
308 mojom::NetHostPtr host; 305 mojom::NetHostPtr host;
309 binding_.Bind(MakeRequest(&host)); 306 binding_.Bind(MakeRequest(&host));
310 auto* instance = arc_bridge_service()->net()->GetInstanceForMethod("Init"); 307 auto* instance =
308 ARC_GET_INSTANCE_FOR_METHOD(arc_bridge_service()->net(), Init);
311 DCHECK(instance); 309 DCHECK(instance);
312 instance->Init(std::move(host)); 310 instance->Init(std::move(host));
313 311
314 if (chromeos::NetworkHandler::IsInitialized()) { 312 if (chromeos::NetworkHandler::IsInitialized()) {
315 GetStateHandler()->AddObserver(this, FROM_HERE); 313 GetStateHandler()->AddObserver(this, FROM_HERE);
316 observing_network_state_ = true; 314 observing_network_state_ = true;
317 } 315 }
318 } 316 }
319 317
320 void ArcNetHostImpl::OnInstanceClosed() { 318 void ArcNetHostImpl::OnInstanceClosed() {
(...skipping 259 matching lines...) Expand 10 before | Expand all | Expand 10 after
580 chromeos::network_handler::ErrorCallback()); 578 chromeos::network_handler::ErrorCallback());
581 callback.Run(true); 579 callback.Run(true);
582 } 580 }
583 } 581 }
584 582
585 void ArcNetHostImpl::StartScan() { 583 void ArcNetHostImpl::StartScan() {
586 GetStateHandler()->RequestScan(); 584 GetStateHandler()->RequestScan();
587 } 585 }
588 586
589 void ArcNetHostImpl::ScanCompleted(const chromeos::DeviceState* /*unused*/) { 587 void ArcNetHostImpl::ScanCompleted(const chromeos::DeviceState* /*unused*/) {
590 auto* net_instance = arc_bridge_service()->net()->GetInstanceForMethod( 588 auto* net_instance =
591 "ScanCompleted", kScanCompletedMinInstanceVersion); 589 ARC_GET_INSTANCE_FOR_METHOD(arc_bridge_service()->net(), ScanCompleted);
592 if (!net_instance) 590 if (!net_instance)
593 return; 591 return;
594 592
595 net_instance->ScanCompleted(); 593 net_instance->ScanCompleted();
596 } 594 }
597 595
598 void ArcNetHostImpl::GetDefaultNetwork( 596 void ArcNetHostImpl::GetDefaultNetwork(
599 const GetDefaultNetworkCallback& callback) { 597 const GetDefaultNetworkCallback& callback) {
600 const chromeos::NetworkState* default_network = 598 const chromeos::NetworkState* default_network =
601 GetStateHandler()->DefaultNetwork(); 599 GetStateHandler()->DefaultNetwork();
602 if (!default_network) { 600 if (!default_network) {
603 VLOG(1) << "GetDefaultNetwork: no default network"; 601 VLOG(1) << "GetDefaultNetwork: no default network";
604 callback.Run(nullptr, nullptr); 602 callback.Run(nullptr, nullptr);
605 return; 603 return;
606 } 604 }
607 VLOG(1) << "GetDefaultNetwork: default network is " 605 VLOG(1) << "GetDefaultNetwork: default network is "
608 << default_network->path(); 606 << default_network->path();
609 std::string user_id_hash = chromeos::LoginState::Get()->primary_user_hash(); 607 std::string user_id_hash = chromeos::LoginState::Get()->primary_user_hash();
610 GetManagedConfigurationHandler()->GetProperties( 608 GetManagedConfigurationHandler()->GetProperties(
611 user_id_hash, default_network->path(), 609 user_id_hash, default_network->path(),
612 base::Bind(&GetDefaultNetworkSuccessCallback, callback), 610 base::Bind(&GetDefaultNetworkSuccessCallback, callback),
613 base::Bind(&GetDefaultNetworkFailureCallback, callback)); 611 base::Bind(&GetDefaultNetworkFailureCallback, callback));
614 } 612 }
615 613
616 void ArcNetHostImpl::DefaultNetworkSuccessCallback( 614 void ArcNetHostImpl::DefaultNetworkSuccessCallback(
617 const std::string& service_path, 615 const std::string& service_path,
618 const base::DictionaryValue& dictionary) { 616 const base::DictionaryValue& dictionary) {
619 auto* net_instance = arc_bridge_service()->net()->GetInstanceForMethod( 617 auto* net_instance = ARC_GET_INSTANCE_FOR_METHOD(arc_bridge_service()->net(),
620 "DefaultNetworkChanged", kDefaultNetworkChangedMinInstanceVersion); 618 DefaultNetworkChanged);
621 if (!net_instance) 619 if (!net_instance)
622 return; 620 return;
623 621
624 net_instance->DefaultNetworkChanged(TranslateONCConfiguration(&dictionary), 622 net_instance->DefaultNetworkChanged(TranslateONCConfiguration(&dictionary),
625 TranslateONCConfiguration(&dictionary)); 623 TranslateONCConfiguration(&dictionary));
626 } 624 }
627 625
628 void ArcNetHostImpl::DefaultNetworkChanged( 626 void ArcNetHostImpl::DefaultNetworkChanged(
629 const chromeos::NetworkState* network) { 627 const chromeos::NetworkState* network) {
630 if (!network) { 628 if (!network) {
631 VLOG(1) << "No default network"; 629 VLOG(1) << "No default network";
632 auto* net_instance = arc_bridge_service()->net()->GetInstanceForMethod( 630 auto* net_instance = ARC_GET_INSTANCE_FOR_METHOD(
633 "DefaultNetworkChanged", kDefaultNetworkChangedMinInstanceVersion); 631 arc_bridge_service()->net(), DefaultNetworkChanged);
634 if (net_instance) 632 if (net_instance)
635 net_instance->DefaultNetworkChanged(nullptr, nullptr); 633 net_instance->DefaultNetworkChanged(nullptr, nullptr);
636 return; 634 return;
637 } 635 }
638 636
639 VLOG(1) << "New default network: " << network->path(); 637 VLOG(1) << "New default network: " << network->path();
640 std::string user_id_hash = chromeos::LoginState::Get()->primary_user_hash(); 638 std::string user_id_hash = chromeos::LoginState::Get()->primary_user_hash();
641 GetManagedConfigurationHandler()->GetProperties( 639 GetManagedConfigurationHandler()->GetProperties(
642 user_id_hash, network->path(), 640 user_id_hash, network->path(),
643 base::Bind(&ArcNetHostImpl::DefaultNetworkSuccessCallback, 641 base::Bind(&ArcNetHostImpl::DefaultNetworkSuccessCallback,
644 weak_factory_.GetWeakPtr()), 642 weak_factory_.GetWeakPtr()),
645 base::Bind(&DefaultNetworkFailureCallback)); 643 base::Bind(&DefaultNetworkFailureCallback));
646 } 644 }
647 645
648 void ArcNetHostImpl::DeviceListChanged() { 646 void ArcNetHostImpl::DeviceListChanged() {
649 auto* net_instance = arc_bridge_service()->net()->GetInstanceForMethod( 647 auto* net_instance = ARC_GET_INSTANCE_FOR_METHOD(arc_bridge_service()->net(),
650 "WifiEnabledStateChanged", kWifiEnabledStateChanged); 648 WifiEnabledStateChanged);
651 if (!net_instance) 649 if (!net_instance)
652 return; 650 return;
653 651
654 bool is_enabled = GetStateHandler()->IsTechnologyEnabled( 652 bool is_enabled = GetStateHandler()->IsTechnologyEnabled(
655 chromeos::NetworkTypePattern::WiFi()); 653 chromeos::NetworkTypePattern::WiFi());
656 net_instance->WifiEnabledStateChanged(is_enabled); 654 net_instance->WifiEnabledStateChanged(is_enabled);
657 } 655 }
658 656
659 void ArcNetHostImpl::OnShuttingDown() { 657 void ArcNetHostImpl::OnShuttingDown() {
660 DCHECK(observing_network_state_); 658 DCHECK(observing_network_state_);
661 GetStateHandler()->RemoveObserver(this, FROM_HERE); 659 GetStateHandler()->RemoveObserver(this, FROM_HERE);
662 observing_network_state_ = false; 660 observing_network_state_ = false;
663 } 661 }
664 662
665 } // namespace arc 663 } // namespace arc
OLDNEW
« no previous file with comments | « components/arc/metrics/arc_metrics_service.cc ('k') | components/arc/obb_mounter/arc_obb_mounter_bridge.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698