cast_event_builder_simple.h 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. // Copyright 2021 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 CHROMECAST_METRICS_CAST_EVENT_BUILDER_SIMPLE_H_
  5. #define CHROMECAST_METRICS_CAST_EVENT_BUILDER_SIMPLE_H_
  6. #include <memory>
  7. #include <string>
  8. #include <vector>
  9. #include "chromecast/metrics/cast_event_builder.h"
  10. namespace chromecast {
  11. class CastEventBuilderSimple : public CastEventBuilder {
  12. public:
  13. CastEventBuilderSimple();
  14. ~CastEventBuilderSimple() override;
  15. // CastEventBuilder implementation
  16. std::string GetName() override;
  17. CastEventBuilder& SetName(const std::string& name) override;
  18. CastEventBuilder& SetTime(const base::TimeTicks& time) override;
  19. CastEventBuilder& SetTimezoneId(const std::string& timezone_id) override;
  20. CastEventBuilder& SetAppId(const std::string& app_id) override;
  21. CastEventBuilder& SetRemoteAppId(const std::string& remote_app_id) override;
  22. CastEventBuilder& SetSessionId(const std::string& session_id) override;
  23. CastEventBuilder& SetSdkVersion(const std::string& sdk_version) override;
  24. CastEventBuilder& SetMplVersion(const std::string& mpl_version) override;
  25. CastEventBuilder& SetConnectionInfo(
  26. const std::string& transport_connection_id,
  27. const std::string& virtual_connection_id) override;
  28. CastEventBuilder& SetGroupUuid(const std::string& group_uuid) override;
  29. CastEventBuilder& SetExtraValue(int64_t extra_value) override;
  30. CastEventBuilder& SetConversationKey(
  31. const std::string& conversation_key) override;
  32. CastEventBuilder& SetRequestId(int32_t request_id) override;
  33. CastEventBuilder& SetEventId(const std::string& event_id) override;
  34. CastEventBuilder& SetAoghRequestId(const std::string& request_id) override;
  35. CastEventBuilder& SetAoghLocalDeviceId(int64_t local_id) override;
  36. CastEventBuilder& SetAoghAgentId(const std::string& agent_id) override;
  37. CastEventBuilder& SetUiVersion(const std::string& ui_version) override;
  38. CastEventBuilder& SetAuditReport(const std::string& audit_report) override;
  39. CastEventBuilder& SetDuoCoreVersion(int64_t version) override;
  40. CastEventBuilder& SetHotwordModelId(const std::string& model_id) override;
  41. CastEventBuilder& SetDiscoveryAppSubtype(const std::string& app_id) override;
  42. CastEventBuilder& SetDiscoveryNamespaceSubtype(
  43. const std::string& namespace_hash) override;
  44. CastEventBuilder& SetDiscoverySender(
  45. const net::IPAddressBytes& sender_ip) override;
  46. CastEventBuilder& SetDiscoveryUnicastFlag(bool uses_unicast) override;
  47. CastEventBuilder& SetFeatureVector(
  48. const std::vector<float>& features) override;
  49. CastEventBuilder& AddMetadata(const std::string& name,
  50. int64_t value) override;
  51. CastEventBuilder& SetLaunchFrom(LaunchFrom launch_from) override;
  52. CastEventBuilder& MergeFrom(
  53. const ::metrics::CastLogsProto_CastEventProto* event_proto) override;
  54. ::metrics::CastLogsProto_CastEventProto* Build() override;
  55. private:
  56. std::unique_ptr<::metrics::CastLogsProto_CastEventProto> event_proto_;
  57. };
  58. } // namespace chromecast
  59. #endif // CHROMECAST_METRICS_CAST_EVENT_BUILDER_SIMPLE_H_