diff --git a/coreapi/linphonecore_jni.cc b/coreapi/linphonecore_jni.cc index c78a9baa3..c21f8a38c 100644 --- a/coreapi/linphonecore_jni.cc +++ b/coreapi/linphonecore_jni.cc @@ -3862,6 +3862,11 @@ extern "C" void Java_org_linphone_core_LinphoneFriendImpl_setPresenceModel(JNIEn linphone_friend_set_presence_model(lf, model); } +extern "C" jboolean Java_org_linphone_core_LinphoneFriendImpl_isAlreadyPresentInFriendList(JNIEnv* env, jobject thiz, jlong ptr) { + LinphoneFriend *lf = (LinphoneFriend *)ptr; + return (jboolean)lf->friend_list != NULL; +} + /* * Class: org_linphone_core_LinphoneFriendImpl * Method: getPresenceModel diff --git a/java/common/org/linphone/core/LinphoneFriend.java b/java/common/org/linphone/core/LinphoneFriend.java index f6bab40fd..e79c57404 100644 --- a/java/common/org/linphone/core/LinphoneFriend.java +++ b/java/common/org/linphone/core/LinphoneFriend.java @@ -204,4 +204,9 @@ public interface LinphoneFriend { String[] getPhoneNumbers(); void addPhoneNumber(String phone); void removePhoneNumber(String phone); + + /** + * Returns true if friend has already been added in a LinphoneFriendList, false otherwise + */ + boolean isAlreadyPresentInFriendList(); } diff --git a/java/impl/org/linphone/core/LinphoneFriendImpl.java b/java/impl/org/linphone/core/LinphoneFriendImpl.java index e30d35ce6..ca25208d2 100644 --- a/java/impl/org/linphone/core/LinphoneFriendImpl.java +++ b/java/impl/org/linphone/core/LinphoneFriendImpl.java @@ -225,4 +225,10 @@ class LinphoneFriendImpl implements LinphoneFriend, Serializable { public void removePhoneNumber(String phone) { removePhoneNumber(nativePtr, phone); } + + private native boolean isAlreadyPresentInFriendList(long nativePtr); + @Override + public boolean isAlreadyPresentInFriendList() { + return isAlreadyPresentInFriendList(nativePtr); + } }