| 
 | |||||||||
| 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> | _buildinClassesList 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<?>> | _classesClasses already loaded. | 
| private  java.lang.String | _classPathStringString with class path. | 
| private  MBSSecurityManager | _securityManagerSecurity manager in use. | 
| private static java.lang.String[] | BUILTIN_CLASSESArray of built-in classes that should not be checked and be loaded with the regular class loader. | 
| private static java.lang.String | JAVA_HOME_STRINGString with the Java home directory. | 
| private static java.lang.String | PATH_SEPARATOR_STRINGString with path separator character. | 
| private static char | SEPARATOR_CHARCharacter 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 | ||||||||