core :: Sys :: load_jclass
jni_env
# Get a Java class by its name from the current `jni_env`
fun load_jclass(name: CString): JClass import jni_env `{
JNIEnv *nit_ffi_jni_env = Sys_jni_env(self);
// retrieve the implementation Java class
jclass java_class = (*nit_ffi_jni_env)->FindClass(nit_ffi_jni_env, name);
if (java_class == NULL) {
fprintf(stderr, "Nit FFI with Java error: failed to load class.\\n");
(*nit_ffi_jni_env)->ExceptionDescribe(nit_ffi_jni_env);
exit(1);
}
return java_class;
`}
lib/java/ffi_support.nit:73,2--86,3
redef fun load_jclass(name)
do
var class_loader = self.class_loader
if class_loader == null then
find_class_loader app.native_context
class_loader = self.class_loader
assert class_loader != null
end
var class_loader_method = self.class_loader_method
assert class_loader_method != null
return load_jclass_intern(class_loader, class_loader_method, name)
end
lib/android/dalvik.nit:46,2--59,4