public class JasperLoader
extends java.net.URLClassLoader
Modifier and Type | Field and Description |
---|---|
private java.util.Map<java.lang.String,byte[]> |
bytecodes |
private java.security.CodeSource |
codeSource |
private java.lang.ClassLoader |
parent |
private java.security.PermissionCollection |
permissionCollection |
private java.lang.SecurityManager |
securityManager |
Constructor and Description |
---|
JasperLoader(java.net.URL[] urls,
java.lang.ClassLoader parent,
java.security.PermissionCollection permissionCollection,
java.security.CodeSource codeSource,
java.util.Map<java.lang.String,byte[]> bytecodes) |
Modifier and Type | Method and Description |
---|---|
java.lang.Class |
findClass(java.lang.String className) |
java.security.PermissionCollection |
getPermissions(java.security.CodeSource codeSource)
Get the Permissions for a CodeSource.
|
java.lang.Class |
loadClass(java.lang.String name)
Load the class with the specified name.
|
java.lang.Class |
loadClass(java.lang.String name,
boolean resolve)
Load the class with the specified name, searching using the following
algorithm until it finds and returns the class.
|
private byte[] |
loadClassDataFromFile(java.lang.String fileName) |
addURL, close, definePackage, findResource, findResources, getResourceAsStream, getURLs, newInstance, newInstance
clearAssertionStatus, defineClass, defineClass, defineClass, defineClass, definePackage, findLibrary, findLoadedClass, findSystemClass, getClassLoadingLock, getPackage, getPackages, getParent, getResource, getResources, getSystemClassLoader, getSystemResource, getSystemResourceAsStream, getSystemResources, registerAsParallelCapable, resolveClass, setClassAssertionStatus, setDefaultAssertionStatus, setPackageAssertionStatus, setSigners
private java.security.PermissionCollection permissionCollection
private java.security.CodeSource codeSource
private java.lang.ClassLoader parent
private java.lang.SecurityManager securityManager
private java.util.Map<java.lang.String,byte[]> bytecodes
public JasperLoader(java.net.URL[] urls, java.lang.ClassLoader parent, java.security.PermissionCollection permissionCollection, java.security.CodeSource codeSource, java.util.Map<java.lang.String,byte[]> bytecodes)
public java.lang.Class loadClass(java.lang.String name) throws java.lang.ClassNotFoundException
loadClass(String, boolean)
with false
as the second argument.loadClass
in class java.lang.ClassLoader
name
- Name of the class to be loadedjava.lang.ClassNotFoundException
- if the class was not foundpublic java.lang.Class loadClass(java.lang.String name, boolean resolve) throws java.lang.ClassNotFoundException
ClassNotFoundException
.
findLoadedClass(String)
to check if the
class has already been loaded. If it has, the same
Class
object is returned.delegate
property is set to true
,
call the loadClass()
method of the parent class
loader, if any.findClass()
to find this class in our locally
defined repositories.loadClass()
method of our parent
class loader, if any.resolve
flag is true
, this method will then
call resolveClass(Class)
on the resulting Class object.loadClass
in class java.lang.ClassLoader
name
- Name of the class to be loadedresolve
- If true
then resolve the classjava.lang.ClassNotFoundException
- if the class was not foundpublic java.lang.Class findClass(java.lang.String className) throws java.lang.ClassNotFoundException
findClass
in class java.net.URLClassLoader
java.lang.ClassNotFoundException
private byte[] loadClassDataFromFile(java.lang.String fileName)
public final java.security.PermissionCollection getPermissions(java.security.CodeSource codeSource)
getPermissions
in class java.net.URLClassLoader
codeSource
- Code source where the code was loaded from