@@ -168,6 +168,34 @@ namespace jni
168168 case webrtc::RTCStatsMemberInterface::kSequenceString :
169169 return jni::static_java_ref_cast<jobject>(env,
170170 JavaString::createArray (env, *member.cast_to <webrtc::RTCStatsMember<std::vector<std::string>>>()));
171+
172+ case webrtc::RTCStatsMemberInterface::kMapStringDouble :
173+ {
174+ std::map<std::string, double > map = *member.cast_to <webrtc::RTCStatsMember<std::map<std::string, double >>>();
175+
176+ JavaHashMap memberMap (env);
177+
178+ for (const auto & item : map) {
179+ memberMap.put (jni::static_java_ref_cast<jobject>(env, JavaString::toJava (env, item.first )),
180+ Double::create (env, item.second ));
181+ }
182+
183+ return jni::static_java_ref_cast<jobject>(env, memberMap);
184+ }
185+
186+ case webrtc::RTCStatsMemberInterface::kMapStringUint64 :
187+ {
188+ std::map<std::string, uint64_t > map = *member.cast_to <webrtc::RTCStatsMember<std::map<std::string, uint64_t >>>();
189+
190+ JavaHashMap memberMap (env);
191+
192+ for (const auto & item : map) {
193+ memberMap.put (jni::static_java_ref_cast<jobject>(env, JavaString::toJava (env, item.first )),
194+ JavaBigInteger::toJava (env, rtc::ToString (item.second )));
195+ }
196+
197+ return jni::static_java_ref_cast<jobject>(env, memberMap);
198+ }
171199 }
172200
173201 return nullptr ;
0 commit comments