Package ch.obermuhlner.scriptengine.java
Class MemoryClassLoader
- java.lang.Object
-
- java.lang.ClassLoader
-
- ch.obermuhlner.scriptengine.java.MemoryClassLoader
-
public class MemoryClassLoader extends java.lang.ClassLoader
AClassLoader
that loads classes from memory.
-
-
Field Summary
Fields Modifier and Type Field Description private java.util.Map<java.lang.String,byte[]>
mapClassBytes
static java.lang.String
MEMORY_CLASS_URL
URL used to identify theCodeSource
of theProtectionDomain
used by this class loader.private java.security.ProtectionDomain
protectionDomain
-
Constructor Summary
Constructors Constructor Description MemoryClassLoader(java.util.Map<java.lang.String,byte[]> mapClassBytes, java.lang.ClassLoader parent)
Creates aMemoryClassLoader
.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.Class<?>
loadClass(java.lang.String name)
-
Methods inherited from class java.lang.ClassLoader
clearAssertionStatus, defineClass, defineClass, defineClass, defineClass, definePackage, findClass, findClass, findLibrary, findLoadedClass, findResource, findResource, findResources, findSystemClass, getClassLoadingLock, getDefinedPackage, getDefinedPackages, getName, getPackage, getPackages, getParent, getPlatformClassLoader, getResource, getResourceAsStream, getResources, getSystemClassLoader, getSystemResource, getSystemResourceAsStream, getSystemResources, getUnnamedModule, isRegisteredAsParallelCapable, loadClass, registerAsParallelCapable, resolveClass, resources, setClassAssertionStatus, setDefaultAssertionStatus, setPackageAssertionStatus, setSigners
-
-
-
-
Field Detail
-
MEMORY_CLASS_URL
public static final java.lang.String MEMORY_CLASS_URL
URL used to identify theCodeSource
of theProtectionDomain
used by this class loader. This is useful to identify classes loaded by this class loader in a policy file.grant codeBase "jrt:/ch.obermuhlner.scriptengine.java/memory-class" { permission java.lang.RuntimePermission "exitVM"; };
- See Also:
- Constant Field Values
-
protectionDomain
private java.security.ProtectionDomain protectionDomain
-
mapClassBytes
private java.util.Map<java.lang.String,byte[]> mapClassBytes
-
-
Constructor Detail
-
MemoryClassLoader
public MemoryClassLoader(java.util.Map<java.lang.String,byte[]> mapClassBytes, java.lang.ClassLoader parent)
Creates aMemoryClassLoader
.- Parameters:
mapClassBytes
- the map of class names to compiled classesparent
- the parentClassLoader
-
-