From 5e2a04219799b0667cdd0c416431842b82517b8a Mon Sep 17 00:00:00 2001 From: heck Date: Thu, 1 Jul 2021 14:13:58 +0200 Subject: [PATCH] JNI-158 - JNI-159 - Remove all keyserver functions --- ...oundation_pEp_jniadapter_AbstractEngine.cc | 114 ------------------ .../pEp/jniadapter/AbstractEngine.java | 17 --- .../interfaces/AbstractEngineInterface.java | 4 - .../jniadapter/test/regression/TestMain.java | 4 - 4 files changed, 139 deletions(-) diff --git a/src/cxx/foundation_pEp_jniadapter_AbstractEngine.cc b/src/cxx/foundation_pEp_jniadapter_AbstractEngine.cc index ca179eb..80bcdf0 100644 --- a/src/cxx/foundation_pEp_jniadapter_AbstractEngine.cc +++ b/src/cxx/foundation_pEp_jniadapter_AbstractEngine.cc @@ -1,5 +1,4 @@ #include "foundation_pEp_jniadapter_AbstractEngine.h" -#include #include #include #include @@ -326,119 +325,6 @@ int examine_identity(pEp_identity *ident, return 0; } -pEp_identity *retrieve_next_identity(void *arg) -{ - pEpLog("called"); - locked_queue < pEp_identity * > *queue = static_cast * > (arg); - - while (!queue->size()) { - usleep(100000); - } - - pEp_identity *ident = queue->front(); - queue->pop_front(); - return ident; -} - -static void *keyserver_thread_routine(void *arg) -{ - PEP_STATUS status = do_keymanagement(retrieve_next_identity, arg); - locked_queue < pEp_identity * > *queue = static_cast * > (arg); - - while (queue->size()) { - pEp_identity *ident = queue->front(); - queue->pop_front(); - free_identity(ident); - } - - delete queue; - return reinterpret_cast(status); -} - -JNIEXPORT void JNICALL Java_foundation_pEp_jniadapter_AbstractEngine__1startKeyserverLookup(JNIEnv *env, - jobject obj) -{ - std::mutex *mutex_local = nullptr; - { - std::lock_guard l(global_mutex); - pEpLog("called with lock_guard"); - mutex_local = get_engine_java_object_mutex(env, obj); - } - std::lock_guard l(*mutex_local); - - pthread_t *thread = nullptr; - locked_queue< pEp_identity * > *queue = nullptr; - - jfieldID thread_handle; - jfieldID queue_handle; - - try { - thread_handle = getFieldID(env, "foundation/pEp/jniadapter/Engine", "keyserverThread", "J"); - queue_handle = getFieldID(env, "foundation/pEp/jniadapter/Engine", "keyserverQueue", "J"); - } - catch (std::exception& ex) { - assert(0); - return; - } - - thread = reinterpret_cast(env->GetLongField(obj, thread_handle)); - if (thread) - return; - - thread = static_cast(calloc(1, sizeof(pthread_t))); - assert(thread); - env->SetLongField(obj, thread_handle, reinterpret_cast(thread)); - - queue = new locked_queue< pEp_identity * >(); - env->SetLongField(obj, queue_handle, reinterpret_cast(queue)); - - register_examine_function(Adapter::session(), examine_identity,static_cast(queue)); - - pthread_create(thread, nullptr, keyserver_thread_routine, static_cast(queue)); -} - -JNIEXPORT void JNICALL Java_foundation_pEp_jniadapter_AbstractEngine__1stopKeyserverLookup(JNIEnv *env, - jobject obj) -{ - std::mutex *mutex_local = nullptr; - { - std::lock_guard l(global_mutex); - pEpLog("called with lock_guard"); - mutex_local = get_engine_java_object_mutex(env, obj); - } - std::lock_guard l(*mutex_local); - - pthread_t *thread = nullptr; - locked_queue< pEp_identity * > *queue = nullptr; - - jfieldID thread_handle; - jfieldID queue_handle; - - try { - thread_handle = getFieldID(env, "foundation/pEp/jniadapter/Engine", "keyserverThread", "J"); - queue_handle = getFieldID(env, "foundation/pEp/jniadapter/Engine", "keyserverQueue", "J"); - } - catch (std::exception& ex) { - assert(0); - return; - } - - thread = reinterpret_cast(env->GetLongField(obj, thread_handle)); - if (!thread) - return; - - queue = reinterpret_cast*>(env->GetLongField(obj, queue_handle)); - - env->SetLongField(obj, queue_handle, 0); - env->SetLongField(obj, thread_handle, 0); - - register_examine_function(Adapter::session(), nullptr, nullptr); - - queue->push_front(nullptr); - pthread_join(*thread, nullptr); - free(thread); -} - JNIEXPORT void JNICALL Java_foundation_pEp_jniadapter_AbstractEngine__1startSync(JNIEnv *env, jobject obj) { diff --git a/src/java/foundation/pEp/jniadapter/AbstractEngine.java b/src/java/foundation/pEp/jniadapter/AbstractEngine.java index f16e302..7d160d8 100644 --- a/src/java/foundation/pEp/jniadapter/AbstractEngine.java +++ b/src/java/foundation/pEp/jniadapter/AbstractEngine.java @@ -23,9 +23,6 @@ abstract class AbstractEngine extends UniquelyIdentifiable implements AbstractEn private native void init(); private native void release(); - private long keyserverThread; - private long keyserverQueue; - public AbstractEngine() throws pEpException { synchronized (AbstractEngine.class) { init(); @@ -67,20 +64,6 @@ abstract class AbstractEngine extends UniquelyIdentifiable implements AbstractEn private native String _getProtocolVersion(); - public void startKeyserverLookup() { - _startKeyserverLookup(); - } - - private native void _startKeyserverLookup(); - - - public void stopKeyserverLookup() { - _startKeyserverLookup(); - } - - private native void _stopKeyserverLookup(); - - public void startSync() { _startSync(); } diff --git a/src/java/foundation/pEp/jniadapter/interfaces/AbstractEngineInterface.java b/src/java/foundation/pEp/jniadapter/interfaces/AbstractEngineInterface.java index 63fb399..17d6f53 100644 --- a/src/java/foundation/pEp/jniadapter/interfaces/AbstractEngineInterface.java +++ b/src/java/foundation/pEp/jniadapter/interfaces/AbstractEngineInterface.java @@ -8,10 +8,6 @@ public interface AbstractEngineInterface extends AutoCloseable { public String getProtocolVersion(); - public void startKeyserverLookup(); - - public void stopKeyserverLookup(); - public void startSync(); public void stopSync(); diff --git a/test/java/foundation/pEp/jniadapter/test/regression/TestMain.java b/test/java/foundation/pEp/jniadapter/test/regression/TestMain.java index acf87a0..3add3e1 100644 --- a/test/java/foundation/pEp/jniadapter/test/regression/TestMain.java +++ b/test/java/foundation/pEp/jniadapter/test/regression/TestMain.java @@ -276,10 +276,6 @@ class TestMain { ctx.engine.getProtocolVersion(); }); - new TestUnit("Engine.startKeyserverLookup", new CTXBase(), ctx -> { - ctx.engine.startKeyserverLookup(); - }); - new TestUnit("Engine.startSync", new CTXBase(), ctx -> { ctx.engine.startSync(); });