From 64fc5a95946c75fe3033104fcfc9e0f33d1bc448 Mon Sep 17 00:00:00 2001 From: Sylvain Berfini Date: Mon, 1 Feb 2016 16:30:36 +0100 Subject: [PATCH] Added JNI wrapper for linphone_friend_list_set_uri and linphone_friend_list_synchronize_friends_from_server --- coreapi/linphonecore_jni.cc | 10 ++++++++++ .../org/linphone/core/LinphoneFriendList.java | 2 ++ .../linphone/core/LinphoneFriendListImpl.java | 16 ++++++++++++++++ 3 files changed, 28 insertions(+) diff --git a/coreapi/linphonecore_jni.cc b/coreapi/linphonecore_jni.cc index 02cd5325d..67e76792c 100644 --- a/coreapi/linphonecore_jni.cc +++ b/coreapi/linphonecore_jni.cc @@ -3188,6 +3188,16 @@ extern "C" jlong Java_org_linphone_core_LinphoneFriendListImpl_newLinphoneFriend return (jlong)fl; } +extern "C" void Java_org_linphone_core_LinphoneFriendListImpl_setUri(JNIEnv* env, jobject thiz, jlong list, jstring juri) { + const char* uri = env->GetStringUTFChars(juri, NULL); + linphone_friend_list_set_uri((LinphoneFriendList*)list, uri); + env->ReleaseStringUTFChars(juri, uri); +} + +extern "C" void Java_org_linphone_core_LinphoneFriendListImpl_synchronizeFriendsFromServer(JNIEnv* env, jobject thiz, jlong list) { + linphone_friend_list_synchronize_friends_from_server((LinphoneFriendList*)list); +} + extern "C" void Java_org_linphone_core_LinphoneFriendImpl_setAddress(JNIEnv* env ,jobject thiz ,jlong ptr diff --git a/java/common/org/linphone/core/LinphoneFriendList.java b/java/common/org/linphone/core/LinphoneFriendList.java index 29621eb0a..836a99d70 100644 --- a/java/common/org/linphone/core/LinphoneFriendList.java +++ b/java/common/org/linphone/core/LinphoneFriendList.java @@ -24,5 +24,7 @@ public interface LinphoneFriendList { public void addFriend(LinphoneFriend friend); public void updateSubscriptions(LinphoneProxyConfig proxyConfig,boolean onlyWhenRegistered); public LinphoneFriend findFriendByUri(String uri); + public void setUri(String uri); + public void synchronizeFriendsFromServer(); long getNativePtr(); } diff --git a/java/impl/org/linphone/core/LinphoneFriendListImpl.java b/java/impl/org/linphone/core/LinphoneFriendListImpl.java index 19eb2687c..a16a509a9 100644 --- a/java/impl/org/linphone/core/LinphoneFriendListImpl.java +++ b/java/impl/org/linphone/core/LinphoneFriendListImpl.java @@ -66,6 +66,22 @@ class LinphoneFriendListImpl implements LinphoneFriendList, Serializable { } } + private native void setUri(long nativePtr, String uri); + @Override + public void setUri(String uri) { + synchronized(getSyncObject()) { + return setUri(nativePtr, uri); + } + } + + private native void synchronizeFriendsFromServer(long nativePtr); + @Override + public void synchronizeFriendsFromServer() { + synchronized(getSyncObject()) { + synchronizeFriendsFromServer(nativePtr); + } + } + /*reserved for JNI */ protected LinphoneFriendListImpl(long aNativePtr) {