| 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 |