Revision: 5951
http://jnode.svn.sourceforge.net/jnode/?rev=5951&view=rev
Author: lsantha
Date: 2013-02-17 15:16:51 +0000 (Sun, 17 Feb 2013)
Log Message:
-----------
OpenJDK integration.
Modified Paths:
--------------
trunk/core/src/core/org/jnode/vm/classmgr/VmField.java
trunk/core/src/core/org/jnode/vm/classmgr/VmMethod.java
Modified: trunk/core/src/core/org/jnode/vm/classmgr/VmField.java
===================================================================
--- trunk/core/src/core/org/jnode/vm/classmgr/VmField.java 2013-02-17 15:16:02 UTC (rev 5950)
+++ trunk/core/src/core/org/jnode/vm/classmgr/VmField.java 2013-02-17 15:16:51 UTC (rev 5951)
@@ -22,6 +22,7 @@
import java.lang.reflect.Field;
import org.jnode.vm.isolate.VmIsolateLocal;
+import sun.reflect.ReflectionFactory;
public abstract class VmField extends VmMember {
@@ -132,8 +133,8 @@
if (slot == -1) {
throw new ClassFormatError("Invalid field: " + this.getName());
}
- javaField = new Field(d_class.asClass(), getName(), getType().asClass(), getModifiers(), slot,
- getSignature(), getRawAnnotations());
+ javaField = ReflectionFactory.getReflectionFactory().newField(d_class.asClass(), getName(),
+ getType().asClass(), getModifiers(), slot,getSignature(), getRawAnnotations());
javaFieldHolder.set(javaField);
}
return javaField;
Modified: trunk/core/src/core/org/jnode/vm/classmgr/VmMethod.java
===================================================================
--- trunk/core/src/core/org/jnode/vm/classmgr/VmMethod.java 2013-02-17 15:16:02 UTC (rev 5950)
+++ trunk/core/src/core/org/jnode/vm/classmgr/VmMethod.java 2013-02-17 15:16:51 UTC (rev 5951)
@@ -20,9 +20,7 @@
package org.jnode.vm.classmgr;
-import java.lang.reflect.Constructor;
import java.lang.reflect.Member;
-import java.lang.reflect.Method;
import org.jnode.annotation.MagicPermission;
import org.jnode.vm.InternString;
import org.jnode.vm.LoadCompileService;
@@ -30,6 +28,7 @@
import org.jnode.vm.facade.VmUtils;
import org.jnode.vm.isolate.VmIsolateLocal;
import org.vmmagic.unboxed.Address;
+import sun.reflect.ReflectionFactory;
@MagicPermission
public abstract class VmMethod extends VmMember implements VmSharedStaticsEntry {
@@ -222,15 +221,15 @@
if (slot == -1) {
throw new ClassFormatError("Invalid constructor");
}
- javaMember = new Constructor(getDeclaringClass().asClass(), args, ces, getModifiers(), slot,
- getSignature(), getRawAnnotations(), getRawParameterAnnotations());
+ javaMember = ReflectionFactory.getReflectionFactory().newConstructor(getDeclaringClass().asClass(),
+ args, ces, getModifiers(), slot, getSignature(), getRawAnnotations(), getRawParameterAnnotations());
} else {
if (slot == -1) {
throw new ClassFormatError("Invalid method");
}
- javaMember = new Method(getDeclaringClass().asClass(), getName(), args, getReturnType().asClass(), ces,
- getModifiers(), slot, getSignature(), getRawAnnotations(), getRawParameterAnnotations(),
- getRawAnnotationDefault());
+ javaMember = ReflectionFactory.getReflectionFactory().newMethod(getDeclaringClass().asClass(),
+ getName(), args, getReturnType().asClass(), ces, getModifiers(), slot, getSignature(),
+ getRawAnnotations(), getRawParameterAnnotations(), getRawAnnotationDefault());
}
javaMemberHolder.set(javaMember);
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|