12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- // Copyright 2020 The Chromium Authors. All rights reserved.
- // Use of this source code is governed by a BSD-style license that can be
- // found in the LICENSE file.
- #include "ash/components/phonehub/tether_controller.h"
- namespace ash {
- namespace phonehub {
- TetherController::TetherController() = default;
- TetherController::~TetherController() = default;
- void TetherController::AddObserver(Observer* observer) {
- observer_list_.AddObserver(observer);
- }
- void TetherController::RemoveObserver(Observer* observer) {
- observer_list_.RemoveObserver(observer);
- }
- void TetherController::NotifyStatusChanged() {
- for (auto& observer : observer_list_)
- observer.OnTetherStatusChanged();
- }
- void TetherController::NotifyAttemptConnectionScanFailed() {
- for (auto& observer : observer_list_)
- observer.OnAttemptConnectionScanFailed();
- }
- std::ostream& operator<<(std::ostream& stream,
- TetherController::Status status) {
- switch (status) {
- case TetherController::Status::kIneligibleForFeature:
- stream << "[Ineligible for feature]";
- break;
- case TetherController::Status::kConnectionUnavailable:
- stream << "[Connection unavailable]";
- break;
- case TetherController::Status::kConnectionAvailable:
- stream << "[Connection available]";
- break;
- case TetherController::Status::kConnecting:
- stream << "[Connecting]";
- break;
- case TetherController::Status::kConnected:
- stream << "[Connected]";
- break;
- case TetherController::Status::kNoReception:
- stream << "[No Reception]";
- break;
- }
- return stream;
- }
- } // namespace phonehub
- } // namespace ash
|