36 jau::jni::shared_ptr_ref<jau::jni::JavaUplink> javaUplink(nativeInstance);
37 javaUplink.null_check2();
38 jau::jni::JNIGlobalRef global_obj(obj);
39 jclass javaClazz = jau::jni::search_class(env, global_obj.getObject());
40 jau::jni::java_exception_check_and_throw(env, E_FILE_LINE);
41 if(
nullptr == javaClazz ) {
42 throw jau::InternalError(
"CPNativeDownlink class not found", E_FILE_LINE);
44 jmethodID mNotifyDeleted = jau::jni::search_method(env, javaClazz,
"notifyDeleted",
"()V",
false);
45 jau::jni::java_exception_check_and_throw(env, E_FILE_LINE);
46 if(
nullptr == mNotifyDeleted ) {
47 throw jau::InternalError(
"CPNativeDownlink class has no notifyDeleted() method, for "+javaUplink->toString(), E_FILE_LINE);
49 javaUplink->setJavaObject( std::make_shared<jau::jni::JavaGlobalObj>( std::move(global_obj), mNotifyDeleted ) );
50 jau::jni::JavaGlobalObj::check(javaUplink->getJavaObject(), E_FILE_LINE);
51 jau_DBG_JNI_PRINT(
"Java_org_cipherpack_CPNativeDownlink_initNativeJavaObject %p -> %s", javaUplink.shared_ptr().get(), javaUplink->toString());
61 jau::jni::shared_ptr_ref<jau::jni::JavaUplink> javaUplink(nativeInstance);
62 javaUplink.null_check2();
63 jau_DBG_JNI_PRINT(
"Java_org_cipherpack_CPNativeDownlink_deleteNativeJavaObject %p -> %s", javaUplink.shared_ptr().get(), javaUplink->toString());
64 javaUplink->setJavaObject();