From 90af4c1b70c1e92efd27810f083aa0b59e631b21 Mon Sep 17 00:00:00 2001 From: Harald Alvestrand Date: Tue, 28 Jun 2022 21:48:37 +0000 Subject: [PATCH] Change RTCEventLogFactory to have a const Create function Conformant with naming rule: https://source.chromium.org/chromium/chromium/src/+/main:third_party/webrtc/g3doc/implementation_basics.md;l=48?q=factory%20file:md$%20file:webrtc&ss=chromium Bug: webrtc:14226 Change-Id: Ibec148fada6303e2ebdc5e6405fd527065f69d41 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/266360 Commit-Queue: Harald Alvestrand Reviewed-by: Tomas Gunnarsson Cr-Commit-Position: refs/heads/main@{#37364} --- api/rtc_event_log/rtc_event_log_factory.cc | 9 +++++++-- api/rtc_event_log/rtc_event_log_factory.h | 2 ++ api/rtc_event_log/rtc_event_log_factory_interface.h | 4 +++- logging/rtc_event_log/fake_rtc_event_log_factory.cc | 12 +++++++++--- logging/rtc_event_log/fake_rtc_event_log_factory.h | 3 +++ pc/peer_connection_factory.cc | 5 ++--- 6 files changed, 26 insertions(+), 9 deletions(-) diff --git a/api/rtc_event_log/rtc_event_log_factory.cc b/api/rtc_event_log/rtc_event_log_factory.cc index fdf267b7ba..38a0e4ebd2 100644 --- a/api/rtc_event_log/rtc_event_log_factory.cc +++ b/api/rtc_event_log/rtc_event_log_factory.cc @@ -27,8 +27,8 @@ RtcEventLogFactory::RtcEventLogFactory(TaskQueueFactory* task_queue_factory) RTC_DCHECK(task_queue_factory_); } -std::unique_ptr RtcEventLogFactory::CreateRtcEventLog( - RtcEventLog::EncodingType encoding_type) { +std::unique_ptr RtcEventLogFactory::Create( + RtcEventLog::EncodingType encoding_type) const { #ifdef WEBRTC_ENABLE_RTC_EVENT_LOG if (field_trial::IsEnabled("WebRTC-RtcEventLogKillSwitch")) { return std::make_unique(); @@ -39,4 +39,9 @@ std::unique_ptr RtcEventLogFactory::CreateRtcEventLog( #endif } +std::unique_ptr RtcEventLogFactory::CreateRtcEventLog( + RtcEventLog::EncodingType encoding_type) { + return Create(encoding_type); +} + } // namespace webrtc diff --git a/api/rtc_event_log/rtc_event_log_factory.h b/api/rtc_event_log/rtc_event_log_factory.h index 06cc074d20..fd1db3c728 100644 --- a/api/rtc_event_log/rtc_event_log_factory.h +++ b/api/rtc_event_log/rtc_event_log_factory.h @@ -25,6 +25,8 @@ class RTC_EXPORT RtcEventLogFactory : public RtcEventLogFactoryInterface { explicit RtcEventLogFactory(TaskQueueFactory* task_queue_factory); ~RtcEventLogFactory() override {} + std::unique_ptr Create( + RtcEventLog::EncodingType encoding_type) const override; std::unique_ptr CreateRtcEventLog( RtcEventLog::EncodingType encoding_type) override; diff --git a/api/rtc_event_log/rtc_event_log_factory_interface.h b/api/rtc_event_log/rtc_event_log_factory_interface.h index acc5bcb038..a6f4dee92f 100644 --- a/api/rtc_event_log/rtc_event_log_factory_interface.h +++ b/api/rtc_event_log/rtc_event_log_factory_interface.h @@ -24,7 +24,9 @@ class RtcEventLogFactoryInterface { public: virtual ~RtcEventLogFactoryInterface() = default; - virtual std::unique_ptr CreateRtcEventLog( + virtual std::unique_ptr Create( + RtcEventLog::EncodingType encoding_type) const = 0; + [[deprecated]] virtual std::unique_ptr CreateRtcEventLog( RtcEventLog::EncodingType encoding_type) = 0; }; diff --git a/logging/rtc_event_log/fake_rtc_event_log_factory.cc b/logging/rtc_event_log/fake_rtc_event_log_factory.cc index f663ec5abe..47db40c9f4 100644 --- a/logging/rtc_event_log/fake_rtc_event_log_factory.cc +++ b/logging/rtc_event_log/fake_rtc_event_log_factory.cc @@ -17,11 +17,17 @@ namespace webrtc { -std::unique_ptr FakeRtcEventLogFactory::CreateRtcEventLog( - RtcEventLog::EncodingType /*encoding_type*/) { +std::unique_ptr FakeRtcEventLogFactory::Create( + RtcEventLog::EncodingType /*encoding_type*/) const { auto fake_event_log = std::make_unique(); - last_log_created_ = fake_event_log.get(); + const_cast(this)->last_log_created_ = + fake_event_log.get(); return fake_event_log; } +std::unique_ptr FakeRtcEventLogFactory::CreateRtcEventLog( + RtcEventLog::EncodingType encoding_type) { + return Create(encoding_type); +} + } // namespace webrtc diff --git a/logging/rtc_event_log/fake_rtc_event_log_factory.h b/logging/rtc_event_log/fake_rtc_event_log_factory.h index 114c3e6323..c7ff33dee4 100644 --- a/logging/rtc_event_log/fake_rtc_event_log_factory.h +++ b/logging/rtc_event_log/fake_rtc_event_log_factory.h @@ -23,6 +23,9 @@ class FakeRtcEventLogFactory : public RtcEventLogFactoryInterface { FakeRtcEventLogFactory() = default; ~FakeRtcEventLogFactory() override = default; + std::unique_ptr Create( + RtcEventLog::EncodingType encoding_type) const override; + std::unique_ptr CreateRtcEventLog( RtcEventLog::EncodingType encoding_type) override; diff --git a/pc/peer_connection_factory.cc b/pc/peer_connection_factory.cc index e99ddce08c..889c2b19a1 100644 --- a/pc/peer_connection_factory.cc +++ b/pc/peer_connection_factory.cc @@ -296,9 +296,8 @@ std::unique_ptr PeerConnectionFactory::CreateRtcEventLog_w() { auto encoding_type = RtcEventLog::EncodingType::Legacy; if (IsTrialEnabled("WebRTC-RtcEventLogNewFormat")) encoding_type = RtcEventLog::EncodingType::NewFormat; - return event_log_factory_ - ? event_log_factory_->CreateRtcEventLog(encoding_type) - : std::make_unique(); + return event_log_factory_ ? event_log_factory_->Create(encoding_type) + : std::make_unique(); } std::unique_ptr PeerConnectionFactory::CreateCall_w(