From 594774d9919ccef61467afc5a71d5fdf81b8183c Mon Sep 17 00:00:00 2001 From: Margaux Clerc Date: Tue, 21 Apr 2015 12:31:08 +0200 Subject: [PATCH] Add isPhoneNumber function in JNI --- coreapi/linphonecore_jni.cc | 11 +++++++++++ .../common/org/linphone/core/LinphoneProxyConfig.java | 7 +++++++ .../org/linphone/core/LinphoneProxyConfigImpl.java | 6 ++++++ 3 files changed, 24 insertions(+) diff --git a/coreapi/linphonecore_jni.cc b/coreapi/linphonecore_jni.cc index a5a159684..a61091a68 100644 --- a/coreapi/linphonecore_jni.cc +++ b/coreapi/linphonecore_jni.cc @@ -3863,6 +3863,17 @@ JNIEXPORT jstring JNICALL Java_org_linphone_core_LinphoneProxyConfigImpl_getReal return jvalue; } +JNIEXPORT jboolean JNICALL Java_org_linphone_core_LinphoneProxyConfigImpl_isPhoneNumber(JNIEnv *env, jobject thiz, jlong ptr, jstring jusername) { + if(jusername){ + const char *username=env->GetStringUTFChars(jusername, NULL); + bool_t res = linphone_proxy_config_is_phone_number((LinphoneProxyConfig *)ptr, username); + env->ReleaseStringUTFChars(jusername,username); + return (jboolean) res; + } else { + return JNI_FALSE; + } +} + extern "C" jint Java_org_linphone_core_LinphoneCallImpl_getDuration(JNIEnv* env,jobject thiz,jlong ptr) { return (jint)linphone_call_get_duration((LinphoneCall *) ptr); } diff --git a/java/common/org/linphone/core/LinphoneProxyConfig.java b/java/common/org/linphone/core/LinphoneProxyConfig.java index 8b668da2e..e5381701e 100644 --- a/java/common/org/linphone/core/LinphoneProxyConfig.java +++ b/java/common/org/linphone/core/LinphoneProxyConfig.java @@ -306,6 +306,13 @@ public interface LinphoneProxyConfig { **/ void setUserData(Object obj); + /** + * Detect if the given input is a phone number or not. + * @param username string to parse. + * @return TRUE if input is a phone number, FALSE otherwise. + **/ + boolean isPhoneNumber(String username); + /** * Returns user data from a proxy config. return null if any * @return an Object. diff --git a/java/impl/org/linphone/core/LinphoneProxyConfigImpl.java b/java/impl/org/linphone/core/LinphoneProxyConfigImpl.java index f08980190..33ac36f8f 100644 --- a/java/impl/org/linphone/core/LinphoneProxyConfigImpl.java +++ b/java/impl/org/linphone/core/LinphoneProxyConfigImpl.java @@ -362,6 +362,12 @@ class LinphoneProxyConfigImpl implements LinphoneProxyConfig { return getPublishExpires(nativePtr); } + private native boolean isPhoneNumber(long nativePtr,String username); + @Override + public boolean isPhoneNumber(String username){ + return isPhoneNumber(nativePtr,username); + } + @Override public void setUserData(Object obj) { userData = obj;