Package com.googlecode.aviator.code.asm
Class ClassDefiner
- java.lang.Object
-
- com.googlecode.aviator.code.asm.ClassDefiner
-
public class ClassDefiner extends java.lang.Object
A class definer
-
-
Field Summary
Fields Modifier and Type Field Description private static java.lang.invoke.MethodHandle
DEFINE_CLASS_HANDLE
private static java.lang.Object[]
EMPTY_OBJS
private static int
errorTimes
static boolean
IS_IBM_SDK
static boolean
IS_JDK7
private static boolean
preferClassLoader
-
Constructor Summary
Constructors Constructor Description ClassDefiner()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static java.lang.Class<?>
defineClass(java.lang.String className, java.lang.Class<?> clazz, byte[] bytes, AviatorClassLoader classLoader, boolean forceClassLoader)
static java.lang.Class<?>
defineClassByClassLoader(java.lang.String className, byte[] bytes, AviatorClassLoader classLoader)
private static boolean
isIBMJdk()
private static boolean
isJDK7()
-
-
-
Field Detail
-
EMPTY_OBJS
private static final java.lang.Object[] EMPTY_OBJS
-
DEFINE_CLASS_HANDLE
private static java.lang.invoke.MethodHandle DEFINE_CLASS_HANDLE
-
IS_JDK7
public static final boolean IS_JDK7
-
IS_IBM_SDK
public static final boolean IS_IBM_SDK
-
preferClassLoader
private static boolean preferClassLoader
-
errorTimes
private static int errorTimes
-
-
Method Detail
-
isIBMJdk
private static boolean isIBMJdk()
-
isJDK7
private static boolean isJDK7()
-
defineClass
public static final java.lang.Class<?> defineClass(java.lang.String className, java.lang.Class<?> clazz, byte[] bytes, AviatorClassLoader classLoader, boolean forceClassLoader) throws java.lang.NoSuchFieldException, java.lang.IllegalAccessException
- Throws:
java.lang.NoSuchFieldException
java.lang.IllegalAccessException
-
defineClassByClassLoader
public static java.lang.Class<?> defineClassByClassLoader(java.lang.String className, byte[] bytes, AviatorClassLoader classLoader)
-
-