com.thoughtworks.qdox

Class JavaDocBuilder

public class JavaDocBuilder extends Object implements Serializable

Simple facade to QDox allowing a source tree to be parsed and the resulting object model navigated.

Example


 // -- Create JavaDocBuilder

 JavaDocBuilder builder = new JavaDocBuilder();

 // -- Add some files

 // Reading a single source file.
 builder.addSource(new FileReader("MyFile.java"));

 // Reading from another kind of input stream.
 builder.addSource(new StringReader("package test; public class Hello {}"));

 // Adding all .java files in a source tree (recursively).
 builder.addSourceTree(new File("mysrcdir"));

 // -- Retrieve source files

 JavaSource[] source = builder.getSources();

 

Author: Joe Walnes Aslak Hellesøy Robert Scholte

Nested Class Summary
static interfaceJavaDocBuilder.ErrorHandler
Constructor Summary
JavaDocBuilder()
JavaDocBuilder(DocletTagFactory docletTagFactory)
JavaDocBuilder(ClassLibrary classLibrary)
JavaDocBuilder(DocletTagFactory docletTagFactory, ClassLibrary classLibrary)
Method Summary
JavaSourceaddSource(Reader reader)
JavaSourceaddSource(Reader reader, String sourceInfo)
JavaSourceaddSource(File file)
JavaSourceaddSource(URL url)
voidaddSourceTree(File file)
Add all files in a directory (and subdirs, recursively).
voidaddSourceTree(File file, FileVisitor errorHandler)
Add all files in a directory (and subdirs, recursively).
protected JavaClasscreateBinaryClass(String name)
protected JavaClasscreateUnknownClass(String name)
JavaClassgetClassByName(String name)
JavaClass[]getClasses()
Returns all the classes found in all the sources, including inner classes and "extra" classes (multiple outer classes defined in the same source file).
ClassLibrarygetClassLibrary()
JavaPackage[]getPackages()
Returns all the packages found in all the sources.
JavaSource[]getSources()
static JavaDocBuilderload(File file)
Note that after loading JavaDocBuilder classloaders need to be re-added.
voidsave(File file)
Listsearch(Searcher searcher)
voidsetDebugLexer(boolean debugLexer)
Forces QDox to dump tokens returned from lexer to System.err.
voidsetDebugParser(boolean debugParser)
Forces QDox to dump parser states to System.out.
voidsetEncoding(String encoding)
voidsetErrorHandler(JavaDocBuilder.ErrorHandler errorHandler)

Constructor Detail

JavaDocBuilder

public JavaDocBuilder()

JavaDocBuilder

public JavaDocBuilder(DocletTagFactory docletTagFactory)

JavaDocBuilder

public JavaDocBuilder(ClassLibrary classLibrary)

JavaDocBuilder

public JavaDocBuilder(DocletTagFactory docletTagFactory, ClassLibrary classLibrary)

Method Detail

addSource

public JavaSource addSource(Reader reader)

addSource

public JavaSource addSource(Reader reader, String sourceInfo)

addSource

public JavaSource addSource(File file)

addSource

public JavaSource addSource(URL url)

addSourceTree

public void addSourceTree(File file)
Add all files in a directory (and subdirs, recursively). If a file cannot be read, a RuntimeException shall be thrown.

addSourceTree

public void addSourceTree(File file, FileVisitor errorHandler)
Add all files in a directory (and subdirs, recursively). If a file cannot be read, errorHandler will be notified.

createBinaryClass

protected JavaClass createBinaryClass(String name)

createUnknownClass

protected JavaClass createUnknownClass(String name)

getClassByName

public JavaClass getClassByName(String name)

getClasses

public JavaClass[] getClasses()
Returns all the classes found in all the sources, including inner classes and "extra" classes (multiple outer classes defined in the same source file).

Returns: all the classes found in all the sources.

Since: 1.3

getClassLibrary

public ClassLibrary getClassLibrary()

getPackages

public JavaPackage[] getPackages()
Returns all the packages found in all the sources.

Returns: all the packages found in all the sources.

Since: 1.9

getSources

public JavaSource[] getSources()

load

public static JavaDocBuilder load(File file)
Note that after loading JavaDocBuilder classloaders need to be re-added.

save

public void save(File file)

search

public List search(Searcher searcher)

setDebugLexer

public void setDebugLexer(boolean debugLexer)
Forces QDox to dump tokens returned from lexer to System.err.

setDebugParser

public void setDebugParser(boolean debugParser)
Forces QDox to dump parser states to System.out.

setEncoding

public void setEncoding(String encoding)

setErrorHandler

public void setErrorHandler(JavaDocBuilder.ErrorHandler errorHandler)