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

Unified Diff: webrtc/sdk/android/src/jni/pc/mediaconstraints_jni.cc

Issue 2992103002: Relanding: Break peerconnection_jni.cc into multiple files, in "pc" directory. (Closed)
Patch Set: Add jni/androidnetworkmonitor_jni.h include for backwards comaptibility. Created 3 years, 4 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
Index: webrtc/sdk/android/src/jni/pc/mediaconstraints_jni.cc
diff --git a/webrtc/sdk/android/src/jni/video_jni.h b/webrtc/sdk/android/src/jni/pc/mediaconstraints_jni.cc
similarity index 24%
copy from webrtc/sdk/android/src/jni/video_jni.h
copy to webrtc/sdk/android/src/jni/pc/mediaconstraints_jni.cc
index 09a193f62c8e05d293e2484b849f04afec6643e8..561ae426ad558eccbcbb0f0542ae8afd33636471 100644
--- a/webrtc/sdk/android/src/jni/video_jni.h
+++ b/webrtc/sdk/android/src/jni/pc/mediaconstraints_jni.cc
@@ -8,33 +8,40 @@
* be found in the AUTHORS file in the root of the source tree.
*/
-#ifndef WEBRTC_SDK_ANDROID_SRC_JNI_VIDEO_JNI_H_
-#define WEBRTC_SDK_ANDROID_SRC_JNI_VIDEO_JNI_H_
-
-#include <jni.h>
-
-#include "webrtc/rtc_base/scoped_ref_ptr.h"
-
-namespace cricket {
-class WebRtcVideoEncoderFactory;
-class WebRtcVideoDecoderFactory;
-} // namespace cricket
+#include "webrtc/sdk/android/src/jni/pc/mediaconstraints_jni.h"
namespace webrtc_jni {
-class SurfaceTextureHelper;
+MediaConstraintsJni::MediaConstraintsJni(JNIEnv* jni, jobject j_constraints) {
+ PopulateConstraintsFromJavaPairList(jni, j_constraints, "mandatory",
+ &mandatory_);
+ PopulateConstraintsFromJavaPairList(jni, j_constraints, "optional",
+ &optional_);
+}
-cricket::WebRtcVideoEncoderFactory* CreateVideoEncoderFactory(
+// static
+void MediaConstraintsJni::PopulateConstraintsFromJavaPairList(
JNIEnv* jni,
- jobject j_encoder_factory);
-
-cricket::WebRtcVideoDecoderFactory* CreateVideoDecoderFactory(
- JNIEnv* jni,
- jobject j_decoder_factory);
-
-jobject GetJavaSurfaceTextureHelper(
- const rtc::scoped_refptr<SurfaceTextureHelper>& surface_texture_helper);
+ jobject j_constraints,
+ const char* field_name,
+ Constraints* field) {
+ jfieldID j_id = GetFieldID(jni, GetObjectClass(jni, j_constraints),
+ field_name, "Ljava/util/List;");
+ jobject j_list = GetObjectField(jni, j_constraints, j_id);
+ for (jobject entry : Iterable(jni, j_list)) {
+ jmethodID get_key = GetMethodID(jni, GetObjectClass(jni, entry), "getKey",
+ "()Ljava/lang/String;");
+ jstring j_key =
+ reinterpret_cast<jstring>(jni->CallObjectMethod(entry, get_key));
+ CHECK_EXCEPTION(jni) << "error during CallObjectMethod";
+ jmethodID get_value = GetMethodID(jni, GetObjectClass(jni, entry),
+ "getValue", "()Ljava/lang/String;");
+ jstring j_value =
+ reinterpret_cast<jstring>(jni->CallObjectMethod(entry, get_value));
+ CHECK_EXCEPTION(jni) << "error during CallObjectMethod";
+ field->push_back(
+ Constraint(JavaToStdString(jni, j_key), JavaToStdString(jni, j_value)));
+ }
+}
} // namespace webrtc_jni
-
-#endif // WEBRTC_SDK_ANDROID_SRC_JNI_VIDEO_JNI_H_
« no previous file with comments | « webrtc/sdk/android/src/jni/pc/mediaconstraints_jni.h ('k') | webrtc/sdk/android/src/jni/pc/mediasource_jni.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698