Package gw.internal.gosu.compiler
Class GosuClassLoader
- java.lang.Object
-
- gw.internal.gosu.compiler.GosuClassLoader
-
- All Implemented Interfaces:
IGosuClassLoader
public class GosuClassLoader extends Object implements IGosuClassLoader
-
-
Constructor Summary
Constructors Constructor Description GosuClassLoader(ClassLoader parent)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
assignParent(ClassLoader parent)
Class
defineClass(ICompilableTypeInternal gsClass, boolean useSingleServingLoader)
Class
defineClass(String name, byte[] bytes)
void
dumpAllClasses()
void
evictLoader(String packageName)
Class<?>
findClass(String strName)
ClassLoader
getActualLoader()
byte[]
getBytes(ICompilableType gsClass)
IJavaType
getFunctionClassForArity(boolean hasReturn, int length)
ClassLoader
getLoader()
static GosuClassLoader
instance()
boolean
isLoaderUnloaded(String namespace)
Class
loadClass(String strName)
boolean
waitForLoaderToUnload(String packageName, long millisToWait)
-
-
-
Constructor Detail
-
GosuClassLoader
public GosuClassLoader(ClassLoader parent)
-
-
Method Detail
-
instance
public static GosuClassLoader instance()
-
dumpAllClasses
public void dumpAllClasses()
- Specified by:
dumpAllClasses
in interfaceIGosuClassLoader
-
getBytes
public byte[] getBytes(ICompilableType gsClass)
- Specified by:
getBytes
in interfaceIGosuClassLoader
-
assignParent
public void assignParent(ClassLoader parent)
- Specified by:
assignParent
in interfaceIGosuClassLoader
-
getLoader
public ClassLoader getLoader()
-
loadClass
public Class loadClass(String strName) throws ClassNotFoundException
- Specified by:
loadClass
in interfaceIGosuClassLoader
- Throws:
ClassNotFoundException
-
findClass
public Class<?> findClass(String strName) throws ClassNotFoundException
- Specified by:
findClass
in interfaceIGosuClassLoader
- Throws:
ClassNotFoundException
-
getFunctionClassForArity
public IJavaType getFunctionClassForArity(boolean hasReturn, int length)
- Specified by:
getFunctionClassForArity
in interfaceIGosuClassLoader
-
defineClass
public Class defineClass(ICompilableTypeInternal gsClass, boolean useSingleServingLoader) throws ClassNotFoundException
- Throws:
ClassNotFoundException
-
isLoaderUnloaded
public boolean isLoaderUnloaded(String namespace)
-
getActualLoader
public ClassLoader getActualLoader()
- Specified by:
getActualLoader
in interfaceIGosuClassLoader
-
defineClass
public Class defineClass(String name, byte[] bytes)
- Specified by:
defineClass
in interfaceIGosuClassLoader
-
waitForLoaderToUnload
public boolean waitForLoaderToUnload(String packageName, long millisToWait)
- Specified by:
waitForLoaderToUnload
in interfaceIGosuClassLoader
-
evictLoader
public void evictLoader(String packageName)
- Specified by:
evictLoader
in interfaceIGosuClassLoader
-
-