22 * or visit www.oracle.com if you need additional information or have any 23 * questions. 24 */ 25 26 /*- 27 * Implementation of class Object 28 * 29 * former threadruntime.c, Sun Sep 22 12:09:39 1991 30 */ 31 32 #include <stdio.h> 33 #include <signal.h> 34 #include <limits.h> 35 36 #include "jni.h" 37 #include "jni_util.h" 38 #include "jvm.h" 39 40 #include "java_lang_Object.h" 41 42 static JNINativeMethod methods[] = { 43 {"hashCode", "()I", (void *)&JVM_IHashCode}, 44 {"wait", "(J)V", (void *)&JVM_MonitorWait}, 45 {"notify", "()V", (void *)&JVM_MonitorNotify}, 46 {"notifyAll", "()V", (void *)&JVM_MonitorNotifyAll}, 47 {"clone", "()Ljava/lang/Object;", (void *)&JVM_Clone}, 48 }; 49 50 JNIEXPORT void JNICALL 51 Java_java_lang_Object_registerNatives(JNIEnv *env, jclass cls) 52 { 53 (*env)->RegisterNatives(env, cls, 54 methods, sizeof(methods)/sizeof(methods[0])); 55 } 56 57 JNIEXPORT jclass JNICALL 58 Java_java_lang_Object_getClass(JNIEnv *env, jobject this) 59 { 60 if (this == NULL) { 61 JNU_ThrowNullPointerException(env, NULL); 62 return 0; 63 } else { 64 return (*env)->GetObjectClass(env, this); 65 } 66 } | 22 * or visit www.oracle.com if you need additional information or have any 23 * questions. 24 */ 25 26 /*- 27 * Implementation of class Object 28 * 29 * former threadruntime.c, Sun Sep 22 12:09:39 1991 30 */ 31 32 #include <stdio.h> 33 #include <signal.h> 34 #include <limits.h> 35 36 #include "jni.h" 37 #include "jni_util.h" 38 #include "jvm.h" 39 40 #include "java_lang_Object.h" 41 42 JNIEXPORT jclass JNICALL 43 Java_java_lang_Object_getClass(JNIEnv *env, jobject this) 44 { 45 if (this == NULL) { 46 JNU_ThrowNullPointerException(env, NULL); 47 return 0; 48 } else { 49 return (*env)->GetObjectClass(env, this); 50 } 51 } |