All Packages This Package Class Hierarchy Class Search Index
java.lang.Object | +----java.lang.ClassLoader | +----edu.utah.janos.core.FlowClassLoader
Summary |
final class FlowClassLoader extends java.lang.ClassLoader { // Fields 1 private Hashtable bytecodeTable; // Constructors 1 FlowClassLoader(ClassSpec[]); // Methods 2 void addClass(String, byte[]); public synchronized Class loadClass(String, boolean) throws ClassNotFoundException; }
Loads class files for a Flow. There are two kinds of classes for a FlowClassLoader: system classes and Flow classes. The Flow classes are specified when the FlowClassLoader is created by the array of ClassSpecs. Each ClassSpec specifies a name and an array of bytes. System classes are those loaded by the parent ClassLoader.
A FlowClassLoader tries to find all loaded classes from the already-loaded classes, then asks if its a system class, and finally, checks the Flow-specific classes.
Fields |
· bytecodeTable | Summary | Top |
private Hashtable bytecodeTable
Constructors |
· FlowClassLoader | Summary | Top |
FlowClassLoader(ClassSpec[] classSpecs)
Make a deep copy of the ClassSpec and push into the table of name to bytecode mappings.
FlowClassLoaders are only created when a new Flow() is created. The ClassSpec elements have to be duplicated because the parameter is from the parent process's memory.
Parameter Description classSpecs array of name and bytecode pairs.
Methods |
· addClass | Summary | Top |
void addClass(String name, byte[] bytecode)
Add a new class to an existing flow. This should be called from inside the flow that the class is being added to. Neither argument may be null.
· loadClass | Summary | Top |
public synchronized Class loadClass(String name, boolean resolve) throws ClassNotFoundException
- Overrides:
- loadClass in class ClassLoader
All Packages This Package Class Hierarchy Class Search IndexFreshly brewed Java API Documentation automatically generated with polardoc Version 1.0.7