phone_hub_metrics_recorder.h 1.2 KB

12345678910111213141516171819202122232425262728293031
  1. // Copyright 2022 The Chromium Authors. All rights reserved.
  2. // Use of this source code is governed by a BSD-style license that can be
  3. // found in the LICENSE file.
  4. #ifndef ASH_COMPONENTS_PHONEHUB_PHONE_HUB_METRICS_RECORDER_H_
  5. #define ASH_COMPONENTS_PHONEHUB_PHONE_HUB_METRICS_RECORDER_H_
  6. #include "ash/services/secure_channel/public/cpp/client/nearby_metrics_recorder.h"
  7. #include "base/time/time.h"
  8. namespace ash::phonehub {
  9. class PhoneHubMetricsRecorder : public secure_channel::NearbyMetricsRecorder {
  10. public:
  11. PhoneHubMetricsRecorder();
  12. ~PhoneHubMetricsRecorder() override;
  13. PhoneHubMetricsRecorder(const PhoneHubMetricsRecorder&) = delete;
  14. PhoneHubMetricsRecorder& operator=(const PhoneHubMetricsRecorder&) = delete;
  15. // secure_channel::NearbyMetricsRecorder:
  16. void RecordConnectionResult(bool success) override;
  17. void RecordConnectionFailureReason(
  18. secure_channel::mojom::ConnectionAttemptFailureReason reason) override;
  19. void RecordConnectionLatency(const base::TimeDelta latency) override;
  20. void RecordConnectionDuration(const base::TimeDelta duration) override;
  21. };
  22. } // namespace ash::phonehub
  23. #endif // ASH_COMPONENTS_PHONEHUB_PHONE_HUB_METRICS_RECORDER_H_