|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectjava.lang.ClassLoader
sysModel.MBSClassLoader
public class MBSClassLoader
Class loader used for loading fish classes.
| Field Summary | |
|---|---|
private java.util.ArrayList<java.lang.String> |
_buildinClasses
List of built-in classes that should not be checked and be loaded with the regular class loader. |
(package private) java.util.HashMap<java.lang.String,java.lang.Class<?>> |
_classes
Classes already loaded. |
private java.lang.String |
_classPathString
String with class path. |
private MBSSecurityManager |
_securityManager
Security manager in use. |
private static java.lang.String[] |
BUILTIN_CLASSES
Array of built-in classes that should not be checked and be loaded with the regular class loader. |
private static java.lang.String |
JAVA_HOME_STRING
String with the Java home directory. |
private static java.lang.String |
PATH_SEPARATOR_STRING
String with path separator character. |
private static char |
SEPARATOR_CHAR
Character with separator character. |
| Constructor Summary | |
|---|---|
MBSClassLoader(MBSSecurityManager securityManager)
Create a new class loader. |
|
| Method Summary | |
|---|---|
void |
checkClass(java.lang.String name,
byte[] classData)
Check if the class is safe to load. |
private byte[] |
loadBytes(java.lang.String name,
java.lang.String path)
Load byte array from name and path. |
java.lang.Class<?> |
loadClass(java.lang.String name,
boolean resolveIt)
Load a class. |
private java.lang.Class<?> |
loadFromClassPath(java.lang.String name,
boolean resolveIt)
Load class from class path. |
private byte[] |
loadFromStream(java.io.InputStream fi)
Load byte array from stream. |
| Methods inherited from class java.lang.ClassLoader |
|---|
clearAssertionStatus, defineClass, defineClass, defineClass, defineClass, definePackage, findClass, findLibrary, findLoadedClass, findResource, findResources, findSystemClass, getPackage, getPackages, getParent, getResource, getResourceAsStream, getResources, getSystemClassLoader, getSystemResource, getSystemResourceAsStream, getSystemResources, loadClass, resolveClass, setClassAssertionStatus, setDefaultAssertionStatus, setPackageAssertionStatus, setSigners |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
java.util.HashMap<java.lang.String,java.lang.Class<?>> _classes
private java.lang.String _classPathString
private static final java.lang.String JAVA_HOME_STRING
private static final char SEPARATOR_CHAR
private static final java.lang.String PATH_SEPARATOR_STRING
private MBSSecurityManager _securityManager
private java.util.ArrayList<java.lang.String> _buildinClasses
private static final java.lang.String[] BUILTIN_CLASSES
| Constructor Detail |
|---|
public MBSClassLoader(MBSSecurityManager securityManager)
securityManager - security manager that lets us enable and disable security measures| Method Detail |
|---|
public java.lang.Class<?> loadClass(java.lang.String name,
boolean resolveIt)
throws java.lang.ClassNotFoundException
loadClass in class java.lang.ClassLoadername - class nameresolveIt - resolve class?
java.lang.ClassNotFoundException
private java.lang.Class<?> loadFromClassPath(java.lang.String name,
boolean resolveIt)
name - class nameresolveIt -
private byte[] loadBytes(java.lang.String name,
java.lang.String path)
name - class file name (without .class)path - path to look in (or jar file)
private byte[] loadFromStream(java.io.InputStream fi)
throws java.io.IOException
fi - input stream
java.io.IOException
public void checkClass(java.lang.String name,
byte[] classData)
name - class nameclassData - bytes of the class file
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||