Java Reference
In-Depth Information
6.2.2 Die Klasse ComponentManager
Die entscheidende Funktionalität des Komponenten-Frameworks befi ndet sich in der Klasse
ComponentManager. Den vollständigen Code dieser zentralen Klasse fi nden Sie in Listing 6.8.
Listing 6.8 Klasse ComponentManager
package javacomp.prototype.framework;
import java.lang.annotation.Annotation;
import java.lang.reflect.Method;
import java.net.*;
import java.util.*;
class ComponentManager
{
private HashMap<String, Object> components;
private ComponentContext context;
public ComponentManager()
{
components = new HashMap<String, Object>();
context = new ComponentContextImpl();
}
public void createComponent(String componentName,
HashMap<String,String> configInfo,
URL[] classpath)
throws Exception
{
String mainClassName = configInfo.get("Main");
if(mainClassName == null)
{
return;
}
ClassLoader parent = null;
String usedComp = configInfo.get("Uses");
if(usedComp != null)
{
Object obj = components.get(usedComp);
if(obj != null)
{
parent = obj.getClass().getClassLoader();
}
}
ClassLoader cl;
if(parent != null)
{
cl = new URLClassLoader(classpath, parent);
}
else
{
cl = new URLClassLoader(classpath);
}
 
Search WWH ::




Custom Search