Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(298)

Unified Diff: webrtc/api/rtcstatscollector.cc

Issue 2462573002: Refactor: Move RTCStatsCollector helper functions to anonymous namespace (Closed)
Patch Set: Renamed kvp transport_cert_stats_pair Created 4 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « webrtc/api/rtcstatscollector.h ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: webrtc/api/rtcstatscollector.cc
diff --git a/webrtc/api/rtcstatscollector.cc b/webrtc/api/rtcstatscollector.cc
index 1c87dacbb16beb037e13f9eecbcf86503b576de9..dc2b1896cc0ad1ad44630c1cbc8ccc1225e69338 100644
--- a/webrtc/api/rtcstatscollector.cc
+++ b/webrtc/api/rtcstatscollector.cc
@@ -71,6 +71,50 @@ const char* DataStateToRTCDataChannelState(
}
}
+void ProduceCertificateStatsFromSSLCertificateStats(
+ int64_t timestamp_us, const rtc::SSLCertificateStats& certificate_stats,
+ RTCStatsReport* report) {
+ RTCCertificateStats* prev_certificate_stats = nullptr;
+ for (const rtc::SSLCertificateStats* s = &certificate_stats; s;
+ s = s->issuer.get()) {
+ RTCCertificateStats* certificate_stats = new RTCCertificateStats(
+ RTCCertificateIDFromFingerprint(s->fingerprint), timestamp_us);
+ certificate_stats->fingerprint = s->fingerprint;
+ certificate_stats->fingerprint_algorithm = s->fingerprint_algorithm;
+ certificate_stats->base64_certificate = s->base64_certificate;
+ if (prev_certificate_stats)
+ prev_certificate_stats->issuer_certificate_id = certificate_stats->id();
+ report->AddStats(std::unique_ptr<RTCCertificateStats>(certificate_stats));
+ prev_certificate_stats = certificate_stats;
+ }
+}
+
+const std::string& ProduceIceCandidateStats(
+ int64_t timestamp_us, const cricket::Candidate& candidate, bool is_local,
+ RTCStatsReport* report) {
+ const std::string& id = "RTCIceCandidate_" + candidate.id();
+ const RTCStats* stats = report->Get(id);
+ if (!stats) {
+ std::unique_ptr<RTCIceCandidateStats> candidate_stats;
+ if (is_local)
+ candidate_stats.reset(new RTCLocalIceCandidateStats(id, timestamp_us));
+ else
+ candidate_stats.reset(new RTCRemoteIceCandidateStats(id, timestamp_us));
+ candidate_stats->ip = candidate.address().ipaddr().ToString();
+ candidate_stats->port = static_cast<int32_t>(candidate.address().port());
+ candidate_stats->protocol = candidate.protocol();
+ candidate_stats->candidate_type = CandidateTypeToRTCIceCandidateType(
+ candidate.type());
+ candidate_stats->priority = static_cast<int32_t>(candidate.priority());
+
+ stats = candidate_stats.get();
+ report->AddStats(std::move(candidate_stats));
+ }
+ RTC_DCHECK_EQ(stats->type(), is_local ? RTCLocalIceCandidateStats::kType
+ : RTCRemoteIceCandidateStats::kType);
+ return stats->id();
+}
+
} // namespace
rtc::scoped_refptr<RTCStatsCollector> RTCStatsCollector::Create(
@@ -225,37 +269,18 @@ void RTCStatsCollector::ProduceCertificateStats_s(
const std::map<std::string, CertificateStatsPair>& transport_cert_stats,
RTCStatsReport* report) const {
RTC_DCHECK(signaling_thread_->IsCurrent());
- for (const auto& kvp : transport_cert_stats) {
- if (kvp.second.local) {
- ProduceCertificateStatsFromSSLCertificateStats_s(
- timestamp_us, *kvp.second.local.get(), report);
+ for (const auto& transport_cert_stats_pair : transport_cert_stats) {
+ if (transport_cert_stats_pair.second.local) {
+ ProduceCertificateStatsFromSSLCertificateStats(
+ timestamp_us, *transport_cert_stats_pair.second.local.get(), report);
}
- if (kvp.second.remote) {
- ProduceCertificateStatsFromSSLCertificateStats_s(
- timestamp_us, *kvp.second.remote.get(), report);
+ if (transport_cert_stats_pair.second.remote) {
+ ProduceCertificateStatsFromSSLCertificateStats(
+ timestamp_us, *transport_cert_stats_pair.second.remote.get(), report);
}
}
}
-void RTCStatsCollector::ProduceCertificateStatsFromSSLCertificateStats_s(
- int64_t timestamp_us, const rtc::SSLCertificateStats& certificate_stats,
- RTCStatsReport* report) const {
- RTC_DCHECK(signaling_thread_->IsCurrent());
- RTCCertificateStats* prev_certificate_stats = nullptr;
- for (const rtc::SSLCertificateStats* s = &certificate_stats; s;
- s = s->issuer.get()) {
- RTCCertificateStats* certificate_stats = new RTCCertificateStats(
- RTCCertificateIDFromFingerprint(s->fingerprint), timestamp_us);
- certificate_stats->fingerprint = s->fingerprint;
- certificate_stats->fingerprint_algorithm = s->fingerprint_algorithm;
- certificate_stats->base64_certificate = s->base64_certificate;
- if (prev_certificate_stats)
- prev_certificate_stats->issuer_certificate_id = certificate_stats->id();
- report->AddStats(std::unique_ptr<RTCCertificateStats>(certificate_stats));
- prev_certificate_stats = certificate_stats;
- }
-}
-
void RTCStatsCollector::ProduceDataChannelStats_s(
int64_t timestamp_us, RTCStatsReport* report) const {
RTC_DCHECK(signaling_thread_->IsCurrent());
@@ -295,9 +320,9 @@ void RTCStatsCollector::ProduceIceCandidateAndPairStats_s(
// anything. We don't have a complete list. Local candidates come from
// Port objects, and prflx candidates (both local and remote) are only
// stored in candidate pairs. crbug.com/632723
- candidate_pair_stats->local_candidate_id = ProduceIceCandidateStats_s(
+ candidate_pair_stats->local_candidate_id = ProduceIceCandidateStats(
timestamp_us, info.local_candidate, true, report);
- candidate_pair_stats->remote_candidate_id = ProduceIceCandidateStats_s(
+ candidate_pair_stats->remote_candidate_id = ProduceIceCandidateStats(
timestamp_us, info.remote_candidate, false, report);
// TODO(hbos): This writable is different than the spec. It goes to
@@ -326,33 +351,6 @@ void RTCStatsCollector::ProduceIceCandidateAndPairStats_s(
}
}
-const std::string& RTCStatsCollector::ProduceIceCandidateStats_s(
- int64_t timestamp_us, const cricket::Candidate& candidate, bool is_local,
- RTCStatsReport* report) const {
- RTC_DCHECK(signaling_thread_->IsCurrent());
- const std::string& id = "RTCIceCandidate_" + candidate.id();
- const RTCStats* stats = report->Get(id);
- if (!stats) {
- std::unique_ptr<RTCIceCandidateStats> candidate_stats;
- if (is_local)
- candidate_stats.reset(new RTCLocalIceCandidateStats(id, timestamp_us));
- else
- candidate_stats.reset(new RTCRemoteIceCandidateStats(id, timestamp_us));
- candidate_stats->ip = candidate.address().ipaddr().ToString();
- candidate_stats->port = static_cast<int32_t>(candidate.address().port());
- candidate_stats->protocol = candidate.protocol();
- candidate_stats->candidate_type = CandidateTypeToRTCIceCandidateType(
- candidate.type());
- candidate_stats->priority = static_cast<int32_t>(candidate.priority());
-
- stats = candidate_stats.get();
- report->AddStats(std::move(candidate_stats));
- }
- RTC_DCHECK_EQ(stats->type(), is_local ? RTCLocalIceCandidateStats::kType
- : RTCRemoteIceCandidateStats::kType);
- return stats->id();
-}
-
void RTCStatsCollector::ProducePeerConnectionStats_s(
int64_t timestamp_us, RTCStatsReport* report) const {
RTC_DCHECK(signaling_thread_->IsCurrent());
« no previous file with comments | « webrtc/api/rtcstatscollector.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698