#include "native/llni.h"
#include "native/native.h"
-#include "native/include/java_lang_Class.h" /* required by j.l.VMO */
-#include "native/include/java_lang_Cloneable.h" /* required by j.l.VMO */
-#include "native/include/java_lang_Object.h" /* required by j.l.VMO */
-
-//FIXME
-extern "C" {
-#include "native/include/java_lang_VMObject.h"
-}
+#if defined(ENABLE_JNI_HEADERS)
+# include "native/vm/include/java_lang_VMObject.h"
+#endif
#include "threads/lock-common.h"
* Method: getClass
* Signature: (Ljava/lang/Object;)Ljava/lang/Class;
*/
-JNIEXPORT java_lang_Class* JNICALL Java_java_lang_VMObject_getClass(JNIEnv *env, jclass clazz, java_lang_Object *obj)
+JNIEXPORT jclass JNICALL Java_java_lang_VMObject_getClass(JNIEnv *env, jclass clazz, jobject obj)
{
classinfo *c;
LLNI_class_get(obj, c);
- return LLNI_classinfo_wrap(c);
+ return (jclass) LLNI_classinfo_wrap(c);
}
* Method: clone
* Signature: (Ljava/lang/Cloneable;)Ljava/lang/Object;
*/
-JNIEXPORT java_lang_Object* JNICALL Java_java_lang_VMObject_clone(JNIEnv *env, jclass clazz, java_lang_Cloneable *_this)
+JNIEXPORT jobject JNICALL Java_java_lang_VMObject_clone(JNIEnv *env, jclass clazz, jobject _this)
{
java_handle_t *o;
java_handle_t *co;
co = builtin_clone(NULL, o);
- return (java_lang_Object *) co;
+ return (jobject) co;
}
* Method: notify
* Signature: (Ljava/lang/Object;)V
*/
-JNIEXPORT void JNICALL Java_java_lang_VMObject_notify(JNIEnv *env, jclass clazz, java_lang_Object *_this)
+JNIEXPORT void JNICALL Java_java_lang_VMObject_notify(JNIEnv *env, jclass clazz, jobject _this)
{
#if defined(ENABLE_THREADS)
lock_notify_object((java_handle_t *) _this);
* Method: notifyAll
* Signature: (Ljava/lang/Object;)V
*/
-JNIEXPORT void JNICALL Java_java_lang_VMObject_notifyAll(JNIEnv *env, jclass clazz, java_lang_Object *_this)
+JNIEXPORT void JNICALL Java_java_lang_VMObject_notifyAll(JNIEnv *env, jclass clazz, jobject _this)
{
#if defined(ENABLE_THREADS)
lock_notify_all_object((java_handle_t *) _this);
* Method: wait
* Signature: (Ljava/lang/Object;JI)V
*/
-JNIEXPORT void JNICALL Java_java_lang_VMObject_wait(JNIEnv *env, jclass clazz, java_lang_Object *o, int64_t ms, int32_t ns)
+JNIEXPORT void JNICALL Java_java_lang_VMObject_wait(JNIEnv *env, jclass clazz, jobject o, jlong ms, jint ns)
{
#if defined(ENABLE_JVMTI)
/* Monitor Wait */