com.thoughtworks.qdox.model
Class ClassLibrary

java.lang.Object
  extended by com.thoughtworks.qdox.model.ClassLibrary
All Implemented Interfaces:
java.io.Serializable

public class ClassLibrary
extends java.lang.Object
implements java.io.Serializable

Important!! Be sure to add a classloader with the bootstrap classes.

Normally you can generate your classLibrary like this:
ClassLibrary classLibrary = new ClassLibrary(); classLibrary.addDefaultLoader();

If you want full control over the classLoaders you might want to create your library like:
ClassLibrary classLibrary = new ClassLibrary( ClassLoader.getSystemClassLoader() )

Author:
Joe Walnes, Aslak Hellesøy, Robert Scholte
See Also:
Serialized Form

Field Summary
private  java.util.List classLoaders
           
private  java.util.Set classNames
           
private  java.util.Map classNameToClassMap
           
private  boolean defaultClassLoadersAdded
           
private  java.util.List sourceFolders
           
 
Constructor Summary
ClassLibrary()
          Remember to add bootstrap classes
ClassLibrary(java.lang.ClassLoader loader)
          Remember to add bootstrap classes
 
Method Summary
 void add(java.lang.String className)
           
 void addClassLoader(java.lang.ClassLoader classLoader)
           
 void addDefaultLoader()
           
 void addSourceFolder(java.io.File sourceFolder)
           
 java.util.Collection all()
           
 boolean contains(java.lang.String className)
           
 java.lang.Class getClass(java.lang.String className)
           
 java.io.File getSourceFile(java.lang.String className)
           
private  void readObject(java.io.ObjectInputStream in)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

classNames

private final java.util.Set classNames

classNameToClassMap

private final java.util.Map classNameToClassMap

defaultClassLoadersAdded

private boolean defaultClassLoadersAdded

classLoaders

private transient java.util.List classLoaders

sourceFolders

private java.util.List sourceFolders
Constructor Detail

ClassLibrary

public ClassLibrary()
Remember to add bootstrap classes


ClassLibrary

public ClassLibrary(java.lang.ClassLoader loader)
Remember to add bootstrap classes

Method Detail

add

public void add(java.lang.String className)

contains

public boolean contains(java.lang.String className)

getSourceFile

public java.io.File getSourceFile(java.lang.String className)

getClass

public java.lang.Class getClass(java.lang.String className)

all

public java.util.Collection all()

addClassLoader

public void addClassLoader(java.lang.ClassLoader classLoader)

addDefaultLoader

public void addDefaultLoader()

addSourceFolder

public void addSourceFolder(java.io.File sourceFolder)

readObject

private void readObject(java.io.ObjectInputStream in)
                 throws java.io.IOException,
                        java.lang.ClassNotFoundException
Throws:
java.io.IOException
java.lang.ClassNotFoundException