From 2ed9ed7ce34ff1c72dd5b93a7add6d2ae04c2523 Mon Sep 17 00:00:00 2001 From: Sylvain Berfini <Sylvain.Berfini@belledonne-communications.com> Date: Thu, 2 Feb 2012 11:29:01 +0100 Subject: [PATCH] getProxyConfigList added to JNI exports --- coreapi/linphonecore_jni.cc | 16 ++++++++++++++++ java/common/org/linphone/core/LinphoneCore.java | 2 ++ 2 files changed, 18 insertions(+) diff --git a/coreapi/linphonecore_jni.cc b/coreapi/linphonecore_jni.cc index ca2c03d405..7fccd4cdf1 100644 --- a/coreapi/linphonecore_jni.cc +++ b/coreapi/linphonecore_jni.cc @@ -455,6 +455,22 @@ extern "C" jlong Java_org_linphone_core_LinphoneCoreImpl_getDefaultProxyConfig( return (jlong)config; } +extern "C" jlongArray Java_org_linphone_core_LinphoneCoreImpl_getProxyConfigList(JNIEnv* env, jobject thiz, jlong lc) { + const MSList* proxies = linphone_core_get_proxy_config_list((LinphoneCore*)lc); + int proxyCount = ms_list_size(proxies); + jlongArray jProxies = env->NewLongArray(proxyCount); + jlong *jInternalArray = env->GetLongArrayElements(jProxies, NULL); + + for (int i = 0; i < proxyCount; i++ ) { + jInternalArray[i] = (unsigned long) (proxies->data); + proxies = proxies->next; + } + + env->ReleaseLongArrayElements(jProxies, jInternalArray, 0); + + return jProxies; +} + extern "C" int Java_org_linphone_core_LinphoneCoreImpl_addProxyConfig( JNIEnv* env ,jobject thiz ,jobject jproxyCfg diff --git a/java/common/org/linphone/core/LinphoneCore.java b/java/common/org/linphone/core/LinphoneCore.java index a9629cce1d..2905d67373 100644 --- a/java/common/org/linphone/core/LinphoneCore.java +++ b/java/common/org/linphone/core/LinphoneCore.java @@ -720,4 +720,6 @@ public interface LinphoneCore { void tunnelAddServerAndMirror(String host, int port, int udpMirrorPort, int roundTripDelay); boolean isTunnelAvailable(); + + LinphoneProxyConfig[] getProxyConfigList(); } -- GitLab