| 
|||||||||
| 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 | ||||||||