Commit 2c296ef6 authored by Antonio Gomes's avatar Antonio Gomes Committed by Commit Bot

Replace uses of WebRTCStatsMember by RTCStatsMember

The replacement is now possible that all users are in Blink.
Essentially, the former is a pure interface for the later.

As a follow up step the use of WebString will be replace by
WTF::String.

BUG=787254, 919392
R=guidou@chromium.org, haraken@chromium.org

Change-Id: I84f540d050e72180a9026f595e586d1319efed1c
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1904669
Commit-Queue: Antonio Gomes <tonikitoo@igalia.com>
Reviewed-by: default avatarKentaro Hara <haraken@chromium.org>
Reviewed-by: default avatarGuido Urdaneta <guidou@chromium.org>
Cr-Commit-Position: refs/heads/master@{#713903}
parent b6dc6c9c
......@@ -942,7 +942,7 @@ TEST_F(RTCPeerConnectionHandlerTest, GetRTCStats) {
EXPECT_EQ(stats->Timestamp(), 2.0);
std::set<webrtc::RTCStatsMemberInterface::Type> members;
for (size_t i = 0; i < stats->MembersCount(); ++i) {
std::unique_ptr<blink::WebRTCStatsMember> member = stats->GetMember(i);
std::unique_ptr<RTCStatsMember> member = stats->GetMember(i);
// TODO(hbos): A WebRTC-change is adding new members, this would cause
// not all members to be defined. This if-statement saves Chromium from
// crashing. As soon as the change has been rolled in, I will update
......
......@@ -31,7 +31,7 @@ v8::Local<v8::Value> RTCStatsToValue(ScriptState* script_state,
};
for (size_t i = 0; i < stats->MembersCount(); ++i) {
std::unique_ptr<WebRTCStatsMember> member = stats->GetMember(i);
std::unique_ptr<RTCStatsMember> member = stats->GetMember(i);
if (!member->IsDefined())
continue;
WebString name = member->GetName();
......
......@@ -6,6 +6,4 @@
namespace blink {
WebRTCStatsMember::~WebRTCStatsMember() = default;
} // namespace blink
......@@ -192,15 +192,9 @@ size_t RTCStats::MembersCount() const {
return stats_members_.size();
}
std::unique_ptr<blink::WebRTCStatsMember> RTCStats::GetMember(size_t i) const {
std::unique_ptr<RTCStatsMember> RTCStats::GetMember(size_t i) const {
DCHECK_LT(i, stats_members_.size());
return CreateRTCStatsMember(stats_owner_, stats_members_[i]);
}
std::unique_ptr<blink::WebRTCStatsMember> CreateRTCStatsMember(
const scoped_refptr<const webrtc::RTCStatsReport>& stats_owner,
const webrtc::RTCStatsMemberInterface* member) {
return std::make_unique<RTCStatsMember>(std::move(stats_owner), member);
return std::make_unique<RTCStatsMember>(stats_owner_, stats_members_[i]);
}
RTCStatsMember::RTCStatsMember(
......
......@@ -16,6 +16,7 @@
namespace blink {
class RTCStats;
class RTCStatsMember;
// Wrapper around a webrtc::RTCStatsReport. Filters out any stats objects that
// aren't whitelisted. |filter| controls whether to include only standard
......@@ -70,7 +71,7 @@ class PLATFORM_EXPORT RTCStats {
double Timestamp() const;
size_t MembersCount() const;
std::unique_ptr<blink::WebRTCStatsMember> GetMember(size_t i) const;
std::unique_ptr<RTCStatsMember> GetMember(size_t i) const;
private:
// Reference to keep the report that owns |stats_| alive.
......@@ -81,30 +82,30 @@ class PLATFORM_EXPORT RTCStats {
const std::vector<const webrtc::RTCStatsMemberInterface*> stats_members_;
};
class PLATFORM_EXPORT RTCStatsMember : public blink::WebRTCStatsMember {
class PLATFORM_EXPORT RTCStatsMember {
public:
RTCStatsMember(const scoped_refptr<const webrtc::RTCStatsReport>& stats_owner,
const webrtc::RTCStatsMemberInterface* member);
~RTCStatsMember() override;
blink::WebString GetName() const override;
webrtc::RTCStatsMemberInterface::Type GetType() const override;
bool IsDefined() const override;
bool ValueBool() const override;
int32_t ValueInt32() const override;
uint32_t ValueUint32() const override;
int64_t ValueInt64() const override;
uint64_t ValueUint64() const override;
double ValueDouble() const override;
blink::WebString ValueString() const override;
blink::WebVector<int> ValueSequenceBool() const override;
blink::WebVector<int32_t> ValueSequenceInt32() const override;
blink::WebVector<uint32_t> ValueSequenceUint32() const override;
blink::WebVector<int64_t> ValueSequenceInt64() const override;
blink::WebVector<uint64_t> ValueSequenceUint64() const override;
blink::WebVector<double> ValueSequenceDouble() const override;
blink::WebVector<blink::WebString> ValueSequenceString() const override;
virtual ~RTCStatsMember();
blink::WebString GetName() const;
webrtc::RTCStatsMemberInterface::Type GetType() const;
bool IsDefined() const;
bool ValueBool() const;
int32_t ValueInt32() const;
uint32_t ValueUint32() const;
int64_t ValueInt64() const;
uint64_t ValueUint64() const;
double ValueDouble() const;
blink::WebString ValueString() const;
blink::WebVector<int> ValueSequenceBool() const;
blink::WebVector<int32_t> ValueSequenceInt32() const;
blink::WebVector<uint32_t> ValueSequenceUint32() const;
blink::WebVector<int64_t> ValueSequenceInt64() const;
blink::WebVector<uint64_t> ValueSequenceUint64() const;
blink::WebVector<double> ValueSequenceDouble() const;
blink::WebVector<blink::WebString> ValueSequenceString() const;
private:
// Reference to keep the report that owns |member_|'s stats object alive.
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment