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

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

Issue 2133503002: arc: Revamp the ArcBridgeService interface (Closed) Base URL: https://chromium.googlesource.com/a/chromium/src.git@master
Patch Set: more rebase Created 4 years, 5 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 <memory> 7 #include <memory>
8 #include <string> 8 #include <string>
9 #include <vector> 9 #include <vector>
10 10
(...skipping 287 matching lines...) Expand 10 before | Expand all | Expand 10 after
298 std::unique_ptr<base::DictionaryValue> error_data) { 298 std::unique_ptr<base::DictionaryValue> error_data) {
299 LOG(ERROR) << "Failed to query default logical network"; 299 LOG(ERROR) << "Failed to query default logical network";
300 } 300 }
301 301
302 } // namespace 302 } // namespace
303 303
304 namespace arc { 304 namespace arc {
305 305
306 ArcNetHostImpl::ArcNetHostImpl(ArcBridgeService* bridge_service) 306 ArcNetHostImpl::ArcNetHostImpl(ArcBridgeService* bridge_service)
307 : ArcService(bridge_service), binding_(this), weak_factory_(this) { 307 : ArcService(bridge_service), binding_(this), weak_factory_(this) {
308 arc_bridge_service()->AddObserver(this); 308 arc_bridge_service()->net()->AddObserver(this);
309 GetStateHandler()->AddObserver(this, FROM_HERE); 309 GetStateHandler()->AddObserver(this, FROM_HERE);
310 } 310 }
311 311
312 ArcNetHostImpl::~ArcNetHostImpl() { 312 ArcNetHostImpl::~ArcNetHostImpl() {
313 DCHECK(thread_checker_.CalledOnValidThread()); 313 DCHECK(thread_checker_.CalledOnValidThread());
314 arc_bridge_service()->RemoveObserver(this); 314 arc_bridge_service()->net()->RemoveObserver(this);
315 if (chromeos::NetworkHandler::IsInitialized()) { 315 if (chromeos::NetworkHandler::IsInitialized()) {
316 GetStateHandler()->RemoveObserver(this, FROM_HERE); 316 GetStateHandler()->RemoveObserver(this, FROM_HERE);
317 } 317 }
318 } 318 }
319 319
320 void ArcNetHostImpl::OnNetInstanceReady() { 320 void ArcNetHostImpl::OnInstanceReady(mojom::NetInstance* net_instance,
321 uint32_t version) {
321 DCHECK(thread_checker_.CalledOnValidThread()); 322 DCHECK(thread_checker_.CalledOnValidThread());
322 323
323 mojom::NetHostPtr host; 324 mojom::NetHostPtr host;
324 binding_.Bind(GetProxy(&host)); 325 binding_.Bind(GetProxy(&host));
325 arc_bridge_service()->net_instance()->Init(std::move(host)); 326 net_instance->Init(std::move(host));
326 } 327 }
327 328
328 void ArcNetHostImpl::GetNetworksDeprecated( 329 void ArcNetHostImpl::GetNetworksDeprecated(
329 bool configured_only, 330 bool configured_only,
330 bool visible_only, 331 bool visible_only,
331 const GetNetworksDeprecatedCallback& callback) { 332 const GetNetworksDeprecatedCallback& callback) {
332 DCHECK(thread_checker_.CalledOnValidThread()); 333 DCHECK(thread_checker_.CalledOnValidThread());
333 if (configured_only && visible_only) { 334 if (configured_only && visible_only) {
334 VLOG(1) << "Illegal arguments - both configured and visible networks " 335 VLOG(1) << "Illegal arguments - both configured and visible networks "
335 "requested."; 336 "requested.";
(...skipping 210 matching lines...) Expand 10 before | Expand all | Expand 10 after
546 chromeos::network_handler::ErrorCallback()); 547 chromeos::network_handler::ErrorCallback());
547 callback.Run(true); 548 callback.Run(true);
548 } 549 }
549 } 550 }
550 551
551 void ArcNetHostImpl::StartScan() { 552 void ArcNetHostImpl::StartScan() {
552 GetStateHandler()->RequestScan(); 553 GetStateHandler()->RequestScan();
553 } 554 }
554 555
555 void ArcNetHostImpl::ScanCompleted(const chromeos::DeviceState* /*unused*/) { 556 void ArcNetHostImpl::ScanCompleted(const chromeos::DeviceState* /*unused*/) {
556 if (!arc_bridge_service()->net_instance()) { 557 if (!arc_bridge_service()->net()->instance()) {
557 VLOG(2) << "NetInstance not ready yet"; 558 VLOG(2) << "NetInstance not ready yet";
558 return; 559 return;
559 } 560 }
560 if (arc_bridge_service()->net_version() < 1) { 561 if (arc_bridge_service()->net()->version() < 1) {
561 VLOG(1) << "NetInstance does not support ScanCompleted."; 562 VLOG(1) << "NetInstance does not support ScanCompleted.";
562 return; 563 return;
563 } 564 }
564 565
565 arc_bridge_service()->net_instance()->ScanCompleted(); 566 arc_bridge_service()->net()->instance()->ScanCompleted();
566 } 567 }
567 568
568 void ArcNetHostImpl::GetDefaultNetwork( 569 void ArcNetHostImpl::GetDefaultNetwork(
569 const GetDefaultNetworkCallback& callback) { 570 const GetDefaultNetworkCallback& callback) {
570 const chromeos::NetworkState* default_network = 571 const chromeos::NetworkState* default_network =
571 GetStateHandler()->DefaultNetwork(); 572 GetStateHandler()->DefaultNetwork();
572 if (!default_network) { 573 if (!default_network) {
573 VLOG(1) << "GetDefaultNetwork: no default network"; 574 VLOG(1) << "GetDefaultNetwork: no default network";
574 callback.Run(nullptr, nullptr); 575 callback.Run(nullptr, nullptr);
575 return; 576 return;
576 } 577 }
577 VLOG(1) << "GetDefaultNetwork: default network is " 578 VLOG(1) << "GetDefaultNetwork: default network is "
578 << default_network->path(); 579 << default_network->path();
579 std::string user_id_hash = chromeos::LoginState::Get()->primary_user_hash(); 580 std::string user_id_hash = chromeos::LoginState::Get()->primary_user_hash();
580 GetManagedConfigurationHandler()->GetProperties( 581 GetManagedConfigurationHandler()->GetProperties(
581 user_id_hash, default_network->path(), 582 user_id_hash, default_network->path(),
582 base::Bind(&GetDefaultNetworkSuccessCallback, callback), 583 base::Bind(&GetDefaultNetworkSuccessCallback, callback),
583 base::Bind(&GetDefaultNetworkFailureCallback, callback)); 584 base::Bind(&GetDefaultNetworkFailureCallback, callback));
584 } 585 }
585 586
586 void ArcNetHostImpl::DefaultNetworkSuccessCallback( 587 void ArcNetHostImpl::DefaultNetworkSuccessCallback(
587 const std::string& service_path, 588 const std::string& service_path,
588 const base::DictionaryValue& dictionary) { 589 const base::DictionaryValue& dictionary) {
589 arc_bridge_service()->net_instance()->DefaultNetworkChanged( 590 arc_bridge_service()->net()->instance()->DefaultNetworkChanged(
590 TranslateONCConfiguration(&dictionary), 591 TranslateONCConfiguration(&dictionary),
591 TranslateONCConfiguration(&dictionary)); 592 TranslateONCConfiguration(&dictionary));
592 } 593 }
593 594
594 void ArcNetHostImpl::DefaultNetworkChanged( 595 void ArcNetHostImpl::DefaultNetworkChanged(
595 const chromeos::NetworkState* network) { 596 const chromeos::NetworkState* network) {
596 if (arc_bridge_service()->net_version() < 2) { 597 if (arc_bridge_service()->net()->version() < 2) {
597 VLOG(1) << "ArcBridgeService does not support DefaultNetworkChanged."; 598 VLOG(1) << "ArcBridgeService does not support DefaultNetworkChanged.";
598 return; 599 return;
599 } 600 }
600 601
601 if (!network) { 602 if (!network) {
602 VLOG(1) << "No default network"; 603 VLOG(1) << "No default network";
603 arc_bridge_service()->net_instance()->DefaultNetworkChanged(nullptr, 604 arc_bridge_service()->net()->instance()->DefaultNetworkChanged(nullptr,
604 nullptr); 605 nullptr);
605 return; 606 return;
606 } 607 }
607 608
608 VLOG(1) << "New default network: " << network->path(); 609 VLOG(1) << "New default network: " << network->path();
609 std::string user_id_hash = chromeos::LoginState::Get()->primary_user_hash(); 610 std::string user_id_hash = chromeos::LoginState::Get()->primary_user_hash();
610 GetManagedConfigurationHandler()->GetProperties( 611 GetManagedConfigurationHandler()->GetProperties(
611 user_id_hash, network->path(), 612 user_id_hash, network->path(),
612 base::Bind(&arc::ArcNetHostImpl::DefaultNetworkSuccessCallback, 613 base::Bind(&arc::ArcNetHostImpl::DefaultNetworkSuccessCallback,
613 weak_factory_.GetWeakPtr()), 614 weak_factory_.GetWeakPtr()),
614 base::Bind(&DefaultNetworkFailureCallback)); 615 base::Bind(&DefaultNetworkFailureCallback));
615 } 616 }
616 617
617 void ArcNetHostImpl::DeviceListChanged() { 618 void ArcNetHostImpl::DeviceListChanged() {
618 if (arc_bridge_service()->net_version() < 3) { 619 if (arc_bridge_service()->net()->version() < 3) {
619 VLOG(1) << "ArcBridgeService does not support DeviceListChanged."; 620 VLOG(1) << "ArcBridgeService does not support DeviceListChanged.";
620 return; 621 return;
621 } 622 }
622 623
623 bool is_enabled = GetStateHandler()->IsTechnologyEnabled( 624 bool is_enabled = GetStateHandler()->IsTechnologyEnabled(
624 chromeos::NetworkTypePattern::WiFi()); 625 chromeos::NetworkTypePattern::WiFi());
625 arc_bridge_service()->net_instance()->WifiEnabledStateChanged(is_enabled); 626 arc_bridge_service()->net()->instance()->WifiEnabledStateChanged(is_enabled);
626 } 627 }
627 628
628 void ArcNetHostImpl::OnShuttingDown() { 629 void ArcNetHostImpl::OnShuttingDown() {
629 GetStateHandler()->RemoveObserver(this, FROM_HERE); 630 GetStateHandler()->RemoveObserver(this, FROM_HERE);
630 } 631 }
631 632
632 } // namespace arc 633 } // namespace arc
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698