// Copyright 2021 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. #ifndef CHROMECAST_METRICS_CAST_EVENT_BUILDER_SIMPLE_H_ #define CHROMECAST_METRICS_CAST_EVENT_BUILDER_SIMPLE_H_ #include #include #include #include "chromecast/metrics/cast_event_builder.h" namespace chromecast { class CastEventBuilderSimple : public CastEventBuilder { public: CastEventBuilderSimple(); ~CastEventBuilderSimple() override; // CastEventBuilder implementation std::string GetName() override; CastEventBuilder& SetName(const std::string& name) override; CastEventBuilder& SetTime(const base::TimeTicks& time) override; CastEventBuilder& SetTimezoneId(const std::string& timezone_id) override; CastEventBuilder& SetAppId(const std::string& app_id) override; CastEventBuilder& SetRemoteAppId(const std::string& remote_app_id) override; CastEventBuilder& SetSessionId(const std::string& session_id) override; CastEventBuilder& SetSdkVersion(const std::string& sdk_version) override; CastEventBuilder& SetMplVersion(const std::string& mpl_version) override; CastEventBuilder& SetConnectionInfo( const std::string& transport_connection_id, const std::string& virtual_connection_id) override; CastEventBuilder& SetGroupUuid(const std::string& group_uuid) override; CastEventBuilder& SetExtraValue(int64_t extra_value) override; CastEventBuilder& SetConversationKey( const std::string& conversation_key) override; CastEventBuilder& SetRequestId(int32_t request_id) override; CastEventBuilder& SetEventId(const std::string& event_id) override; CastEventBuilder& SetAoghRequestId(const std::string& request_id) override; CastEventBuilder& SetAoghLocalDeviceId(int64_t local_id) override; CastEventBuilder& SetAoghAgentId(const std::string& agent_id) override; CastEventBuilder& SetUiVersion(const std::string& ui_version) override; CastEventBuilder& SetAuditReport(const std::string& audit_report) override; CastEventBuilder& SetDuoCoreVersion(int64_t version) override; CastEventBuilder& SetHotwordModelId(const std::string& model_id) override; CastEventBuilder& SetDiscoveryAppSubtype(const std::string& app_id) override; CastEventBuilder& SetDiscoveryNamespaceSubtype( const std::string& namespace_hash) override; CastEventBuilder& SetDiscoverySender( const net::IPAddressBytes& sender_ip) override; CastEventBuilder& SetDiscoveryUnicastFlag(bool uses_unicast) override; CastEventBuilder& SetFeatureVector( const std::vector& features) override; CastEventBuilder& AddMetadata(const std::string& name, int64_t value) override; CastEventBuilder& SetLaunchFrom(LaunchFrom launch_from) override; CastEventBuilder& MergeFrom( const ::metrics::CastLogsProto_CastEventProto* event_proto) override; ::metrics::CastLogsProto_CastEventProto* Build() override; private: std::unique_ptr<::metrics::CastLogsProto_CastEventProto> event_proto_; }; } // namespace chromecast #endif // CHROMECAST_METRICS_CAST_EVENT_BUILDER_SIMPLE_H_