4 // get class MessageData
5 cls_msg = (*env)->GetObjectClass(env, obj_msg);
9 printf(":!c: cls_msg = NULL \n");
17 fid = (*env)->GetFieldID(env,
20 "Ljava/nio/ByteBuffer;");
24 printf(":!c: fid = NULL \n");
29 obj_bb = (*env)->GetObjectField(env, obj_msg, fid);
33 printf(":!c: obj_bb = NULL \n");
37 // create global reference
38 callback_cont->bbuff = (*env)->NewGlobalRef(env, obj_bb);
39 if (callback_cont->bbuff == 0)
42 printf(":!c: callback_cont->bbuff = NULL \n");
47 printf(":c: global reference created.. \n");
50 // get class ByteBuffer
51 cls_bb = (*env)->GetObjectClass(env, obj_bb);
55 printf(":!c: cls_bb = NULL \n");
60 mid = (*env)->GetMethodID(env,
67 printf(":!c: mid = NULL \n");
71 buff_length = (*env)->CallIntMethod(env,
75 // rewind buffer (needs cls Buffer not ByteBuffer!)
77 cls_tmp = (*env)->FindClass(env, "java/nio/Buffer");
81 printf(":!c: cls_tmp = NULL \n");
86 mid = (*env)->GetMethodID(env,
89 "()Ljava/nio/Buffer;");
93 printf(":!c: mid = NULL \n");
98 (*env)->CallObjectMethod(env,
102 printf(":c: buffer successfully rewind..\n");
105 mid = (*env)->GetMethodID(env,
108 "(B)Ljava/nio/ByteBuffer;");
112 printf(":!c: mid = NULL \n");
116 // copy the bytes from C to JAVA buffer
117 // //////////////////////////////////////////////////////////
118 buffer = (char *) vinstance;
120 for(i = 0; i < buff_length; i++)
123 printf(":c: i = %d kopirovany znak = %c [%d] \n",
127 obj_bb = (*env)->CallObjectMethod(env,
134 // //////////////////////////////////////////////////////////
136 mid = (*env)->GetMethodID(env,
143 printf(":!c: mid = NULL \n");
148 (*env)->CallVoidMethod(env,