OLD | NEW |
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 Loading... |
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 Loading... |
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 |
OLD | NEW |