From d3e8feeb605b087e33c628ebfd0c79e84d598120 Mon Sep 17 00:00:00 2001 From: Sylvain Berfini Date: Fri, 15 Jul 2016 10:55:24 +0200 Subject: [PATCH] JNI wrapper for lime methods --- coreapi/linphonecore_jni.cc | 21 ++++++++++ .../org/linphone/core/LinphoneCore.java | 42 +++++++++++++++++++ .../org/linphone/core/LinphoneCoreImpl.java | 15 +++++++ 3 files changed, 78 insertions(+) diff --git a/coreapi/linphonecore_jni.cc b/coreapi/linphonecore_jni.cc index 0d3a90472..94d92503a 100644 --- a/coreapi/linphonecore_jni.cc +++ b/coreapi/linphonecore_jni.cc @@ -2475,6 +2475,27 @@ extern "C" void Java_org_linphone_core_LinphoneCoreImpl_setMediaEncryptionMandat linphone_core_set_media_encryption_mandatory((LinphoneCore*)lc, yesno); } +extern "C" jboolean Java_org_linphone_core_LinphoneCoreImpl_isLimeEncryptionAvailable (JNIEnv* env + ,jobject thiz + ,jlong lc + ) { + return (jboolean) linphone_core_lime_available((LinphoneCore*)lc); +} + +extern "C" jint Java_org_linphone_core_LinphoneCoreImpl_getLimeEncryption(JNIEnv* env + ,jobject thiz + ,jlong lc + ) { + return (jint)linphone_core_lime_enabled((LinphoneCore*)lc); +} + +extern "C" void Java_org_linphone_core_LinphoneCoreImpl_setLimeEncryption(JNIEnv* env + ,jobject thiz + ,jlong lc + ,jint menc) { + linphone_core_enable_lime((LinphoneCore*)lc,(LinphoneLimeState)menc); +} + /* * Class: org_linphone_core_LinphoneCoreImpl * Method: disableChat diff --git a/java/common/org/linphone/core/LinphoneCore.java b/java/common/org/linphone/core/LinphoneCore.java index f63c017ef..e13e75a28 100644 --- a/java/common/org/linphone/core/LinphoneCore.java +++ b/java/common/org/linphone/core/LinphoneCore.java @@ -561,6 +561,42 @@ public interface LinphoneCore { return mStringValue; } } + static public final class LinphoneLimeState { + + static private Vector values = new Vector(); + /** + * Disabled + */ + static public final LinphoneLimeState Disabled = new LinphoneLimeState(0, "None"); + /** + * Mandatory + */ + static public final LinphoneLimeState Mandatory = new LinphoneLimeState(1,"Mandatory"); + /** + * Preferred + */ + static public final LinphoneLimeState Preferred = new LinphoneLimeState(2,"Preferred"); + protected final int mValue; + private final String mStringValue; + + + private LinphoneLimeState(int value, String stringValue) { + mValue = value; + values.addElement(this); + mStringValue = stringValue; + } + public static LinphoneLimeState fromInt(int value) { + + for (int i=0; i