public class JavaDocBuilder extends java.lang.Object implements java.io.Serializable, JavaClassCache
// -- 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();
Modifier and Type | Field and Description |
---|---|
private java.util.Map |
classes |
private ClassLibrary |
classLibrary |
private boolean |
debugLexer |
private boolean |
debugParser |
private DocletTagFactory |
docletTagFactory |
private java.lang.String |
encoding |
private java.util.List |
sources |
Constructor and Description |
---|
JavaDocBuilder() |
JavaDocBuilder(DocletTagFactory docletTagFactory) |
Modifier and Type | Method and Description |
---|---|
private void |
addClass(JavaClass cls) |
private void |
addClasses(JavaSource source) |
private void |
addClassesRecursive(JavaClass javaClass,
java.util.Set set) |
private void |
addClassesRecursive(JavaSource javaSource,
java.util.Set resultSet) |
private void |
addField(java.lang.reflect.Field field,
ModelBuilder binaryBuilder) |
private void |
addMethodOrConstructor(java.lang.reflect.Member member,
ModelBuilder binaryBuilder) |
private void |
addModifiers(java.util.Set set,
int modifier) |
JavaSource |
addSource(java.io.File file) |
JavaSource |
addSource(java.io.Reader reader) |
JavaSource |
addSource(java.io.Reader reader,
java.lang.String sourceInfo) |
JavaSource |
addSource(java.net.URL url) |
void |
addSourceTree(java.io.File file) |
private JavaClass |
createBinaryClass(java.lang.String name) |
private JavaClass |
createUnknownClass(java.lang.String name) |
JavaClass |
getClassByName(java.lang.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).
|
ClassLibrary |
getClassLibrary() |
private java.lang.String |
getClassName(java.lang.String fullClassName) |
private static int |
getDimension(java.lang.Class c) |
private java.lang.String |
getPackageName(java.lang.String fullClassName) |
JavaSource[] |
getSources() |
private static java.lang.String |
getTypeName(java.lang.Class c) |
static JavaDocBuilder |
load(java.io.File file)
Note that after loading JavaDocBuilder classloaders need to be re-added.
|
void |
save(java.io.File file) |
java.util.List |
search(Searcher searcher) |
void |
setDebugLexer(boolean debugLexer)
Forces QDox to dump tokens returned from lexer to System.err.
|
void |
setDebugParser(boolean debugParser)
Forces QDox to dump parser states to System.out.
|
void |
setEncoding(java.lang.String encoding) |
private java.util.Map classes
private ClassLibrary classLibrary
private java.util.List sources
private DocletTagFactory docletTagFactory
private java.lang.String encoding
private boolean debugLexer
private boolean debugParser
public JavaDocBuilder()
public JavaDocBuilder(DocletTagFactory docletTagFactory)
private void addClasses(JavaSource source)
private void addClass(JavaClass cls)
public JavaClass getClassByName(java.lang.String name)
getClassByName
in interface JavaClassCache
private JavaClass createUnknownClass(java.lang.String name)
private JavaClass createBinaryClass(java.lang.String name)
private void addModifiers(java.util.Set set, int modifier)
private void addField(java.lang.reflect.Field field, ModelBuilder binaryBuilder)
private void addMethodOrConstructor(java.lang.reflect.Member member, ModelBuilder binaryBuilder)
private static final int getDimension(java.lang.Class c)
private static java.lang.String getTypeName(java.lang.Class c)
private java.lang.String getPackageName(java.lang.String fullClassName)
private java.lang.String getClassName(java.lang.String fullClassName)
public JavaSource addSource(java.io.Reader reader)
public JavaSource addSource(java.io.Reader reader, java.lang.String sourceInfo)
public JavaSource addSource(java.io.File file) throws java.io.IOException, java.io.FileNotFoundException
java.io.IOException
java.io.FileNotFoundException
public JavaSource addSource(java.net.URL url) throws java.io.IOException, java.io.FileNotFoundException
java.io.IOException
java.io.FileNotFoundException
public JavaSource[] getSources()
public JavaClass[] getClasses()
getClasses
in interface JavaClassCache
private void addClassesRecursive(JavaSource javaSource, java.util.Set resultSet)
private void addClassesRecursive(JavaClass javaClass, java.util.Set set)
public void addSourceTree(java.io.File file)
public java.util.List search(Searcher searcher)
public ClassLibrary getClassLibrary()
public void save(java.io.File file) throws java.io.IOException
java.io.IOException
public static JavaDocBuilder load(java.io.File file) throws java.io.IOException
java.io.IOException
public void setEncoding(java.lang.String encoding)
public void setDebugLexer(boolean debugLexer)
public void setDebugParser(boolean debugParser)