From f04dab8f103d7be12ad9b72bdfef87b37aea458e Mon Sep 17 00:00:00 2001 From: Sylvain Berfini Date: Wed, 16 Oct 2013 09:45:04 +0200 Subject: [PATCH] Added JNI API to get proxyconfigs' prefix & escape plus --- coreapi/linphonecore_jni.cc | 11 +++++++++++ .../org/linphone/core/LinphoneProxyConfig.java | 12 ++++++++++++ .../org/linphone/core/LinphoneProxyConfigImpl.java | 8 ++++++++ 3 files changed, 31 insertions(+) diff --git a/coreapi/linphonecore_jni.cc b/coreapi/linphonecore_jni.cc index be6923cc5..12c210b44 100644 --- a/coreapi/linphonecore_jni.cc +++ b/coreapi/linphonecore_jni.cc @@ -1462,10 +1462,15 @@ extern "C" jstring Java_org_linphone_core_LinphoneProxyConfigImpl_getDomain(JNIE return NULL; } } + extern "C" void Java_org_linphone_core_LinphoneProxyConfigImpl_setDialEscapePlus(JNIEnv* env,jobject thiz,jlong proxyCfg,jboolean value) { linphone_proxy_config_set_dial_escape_plus((LinphoneProxyConfig*)proxyCfg,value); } +extern "C" jboolean Java_org_linphone_core_LinphoneProxyConfigImpl_getDialEscapePlus(JNIEnv* env,jobject thiz,jlong proxyCfg) { + return (jboolean) linphone_proxy_config_get_dial_escape_plus((LinphoneProxyConfig*)proxyCfg); +} + extern "C" void Java_org_linphone_core_LinphoneProxyConfigImpl_setDialPrefix(JNIEnv* env ,jobject thiz ,jlong proxyCfg @@ -1474,6 +1479,12 @@ extern "C" void Java_org_linphone_core_LinphoneProxyConfigImpl_setDialPrefix(JNI linphone_proxy_config_set_dial_prefix((LinphoneProxyConfig*)proxyCfg,prefix); env->ReleaseStringUTFChars(jprefix, prefix); } + +extern "C" jstring Java_org_linphone_core_LinphoneProxyConfigImpl_getDialPrefix(JNIEnv* env,jobject thiz,jlong proxyCfg) { + const char * prefix = linphone_proxy_config_get_dial_prefix((LinphoneProxyConfig*)proxyCfg); + return prefix ? env->NewStringUTF(prefix) : NULL; +} + extern "C" void Java_org_linphone_core_LinphoneProxyConfigImpl_enablePublish(JNIEnv* env ,jobject thiz ,jlong proxyCfg diff --git a/java/common/org/linphone/core/LinphoneProxyConfig.java b/java/common/org/linphone/core/LinphoneProxyConfig.java index 83e8bbd5d..f06df31b9 100644 --- a/java/common/org/linphone/core/LinphoneProxyConfig.java +++ b/java/common/org/linphone/core/LinphoneProxyConfig.java @@ -84,6 +84,12 @@ public interface LinphoneProxyConfig { * @param prefix */ public void setDialPrefix(String prefix); + + /** + * Returns the automatically added international prefix to e164 phone numbers + */ + public String getDialPrefix(); + /** * * Sets whether liblinphone should replace "+" by "00" in dialed numbers (passed to * {@link LinphoneCore#invite(String)}). @@ -91,6 +97,12 @@ public interface LinphoneProxyConfig { */ public void setDialEscapePlus(boolean value); + /** + * Whether liblinphone should replace "+" by "00" in dialed numbers (passed to + * {@link LinphoneCore#invite(String)}). + */ + public boolean getDialEscapePlus(); + /** * get domain host name or ip * @return may be null diff --git a/java/impl/org/linphone/core/LinphoneProxyConfigImpl.java b/java/impl/org/linphone/core/LinphoneProxyConfigImpl.java index 25168ea57..a62db0b85 100644 --- a/java/impl/org/linphone/core/LinphoneProxyConfigImpl.java +++ b/java/impl/org/linphone/core/LinphoneProxyConfigImpl.java @@ -65,12 +65,14 @@ class LinphoneProxyConfigImpl implements LinphoneProxyConfig { private native boolean isRegistered(long ptr); private native void setDialPrefix(long ptr, String prefix); + private native String getDialPrefix(long ptr); private native String normalizePhoneNumber(long ptr,String number); private native String getDomain(long ptr); private native void setDialEscapePlus(long ptr, boolean value); + private native boolean getDialEscapePlus(long ptr); private native String getRoute(long ptr); private native int setRoute(long ptr,String uri); @@ -108,12 +110,18 @@ class LinphoneProxyConfigImpl implements LinphoneProxyConfig { public void setDialPrefix(String prefix) { setDialPrefix(nativePtr, prefix); } + public String getDialPrefix() { + return getDialPrefix(nativePtr); + } public String getDomain() { return getDomain(nativePtr); } public void setDialEscapePlus(boolean value) { setDialEscapePlus(nativePtr,value); } + public boolean getDialEscapePlus() { + return getDialEscapePlus(nativePtr); + } public String getIdentity() { return getIdentity(nativePtr); }