19 struct MkProcCallS const *
const call = callV1;
20 JNIEnv *env = call->env;
23 jobjectArray valsO = (*env)->NewObjectArray(env, num, MK(Class_String), NULL);
24 jobjectArray colsO = (*env)->NewObjectArray(env, num, MK(Class_String), NULL);
26 for (
int i=0; i<num; i++) {
27 (*env)->SetObjectArrayElement(env, valsO, i, (*env)->NewStringUTF(env,vals[i]));
28 (*env)->SetObjectArrayElement(env, colsO, i, (*env)->NewStringUTF(env,cols[i]));
32 if (call->class == NULL) {
34 (*env)->CallObjectMethod(env, call->object, call->method, valsO, colsO);
35 }
else if (call->object == NULL) {
37 (*env)->CallStaticObjectMethod(env, call->class, call->method, valsO, colsO);
40 (*env)->CallNonvirtualObjectMethod(env, call->object, call->class, call->method, valsO, colsO);
42 if((*env)->ExceptionCheck(env) != JNI_FALSE)
goto error_lng;
46 OT_ERROR_LNG_2_META(NULL);
56 struct MkProcCallS const *
const call = callV2;
57 JNIEnv *env = call->env;
59 jobject valsO = MK(MkBufferListC_ObjNew)(
MK_RT_CALL env,vals);
60 jobject colsO = MK(MkBufferListC_ObjNew)(
MK_RT_CALL env,cols);
63 if (call->class == NULL) {
65 (*env)->CallObjectMethod(env, call->object, call->method, valsO, colsO);
66 }
else if (call->object == NULL) {
68 (*env)->CallStaticObjectMethod(env, call->class, call->method, valsO, colsO);
71 (*env)->CallNonvirtualObjectMethod(env, call->object, call->class, call->method, valsO, colsO);
75 if((*env)->ExceptionCheck(env) != JNI_FALSE) {
77 OT_ERROR_LNG_2_META(NULL);