com.thoughtworks.qdox.model
Class ModelBuilder

java.lang.Object
  extended by com.thoughtworks.qdox.model.ModelBuilder
All Implemented Interfaces:
Builder

public class ModelBuilder
extends java.lang.Object
implements Builder

Author:
Joe Walnes, Robert Scholte

Field Summary
private  java.util.Map allPackages
           
private  JavaClassContext context
           
private  java.util.List currentAnnoDefs
           
private  JavaClass currentClass
           
private  JavaClassParent currentParent
           
private  DocletTagFactory docletTagFactory
           
private  java.lang.String lastComment
           
private  java.util.List lastTagSet
           
private  JavaSource source
           
 
Constructor Summary
ModelBuilder()
           
ModelBuilder(JavaClassContext context, DocletTagFactory docletTagFactory, java.util.Map allPackages)
           
 
Method Summary
 void addAnnotation(Annotation annotation)
           
 void addField(FieldDef def)
           
 void addImport(java.lang.String importName)
           
private  void addJavaDoc(AbstractJavaEntity entity)
           
 void addJavaDoc(java.lang.String text)
           
 void addJavaDocTag(TagDef tagDef)
           
 void addMethod(MethodDef def)
           
 void addPackage(PackageDef packageDef)
           
 void beginClass(ClassDef def)
           
 Type createType(java.lang.String typeName, int dimensions)
           
 Type createType(TypeDef typeDef)
           
 Type createType(TypeDef typeDef, int dimensions)
          this one is specific for those cases where dimensions can be part of both the type and identifier i.e.
 TypeVariable createTypeVariable(java.lang.String name, java.util.List typeParams)
           
 TypeVariable createTypeVariable(TypeVariableDef typeVariableDef)
           
 void endClass()
           
 JavaSource getSource()
           
private  void setAnnotations(AbstractBaseJavaEntity entity)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

context

private final JavaClassContext context

source

private final JavaSource source

currentParent

private JavaClassParent currentParent

currentClass

private JavaClass currentClass

currentAnnoDefs

private java.util.List currentAnnoDefs

lastComment

private java.lang.String lastComment

lastTagSet

private java.util.List lastTagSet

docletTagFactory

private DocletTagFactory docletTagFactory

allPackages

private final java.util.Map allPackages
Constructor Detail

ModelBuilder

public ModelBuilder()

ModelBuilder

public ModelBuilder(JavaClassContext context,
                    DocletTagFactory docletTagFactory,
                    java.util.Map allPackages)
Method Detail

addPackage

public void addPackage(PackageDef packageDef)
Specified by:
addPackage in interface Builder

addImport

public void addImport(java.lang.String importName)
Specified by:
addImport in interface Builder

addJavaDoc

public void addJavaDoc(java.lang.String text)
Specified by:
addJavaDoc in interface Builder

addJavaDocTag

public void addJavaDocTag(TagDef tagDef)
Specified by:
addJavaDocTag in interface Builder

beginClass

public void beginClass(ClassDef def)
Specified by:
beginClass in interface Builder

endClass

public void endClass()
Specified by:
endClass in interface Builder

createType

public Type createType(java.lang.String typeName,
                       int dimensions)
Specified by:
createType in interface Builder

createType

public Type createType(TypeDef typeDef)
Specified by:
createType in interface Builder

createType

public Type createType(TypeDef typeDef,
                       int dimensions)
this one is specific for those cases where dimensions can be part of both the type and identifier i.e. private String[] matrix[]; //field public abstract String[] getMatrix[](); //method

Parameters:
typeDef -
dimensions -
Returns:
the Type

addJavaDoc

private void addJavaDoc(AbstractJavaEntity entity)

addMethod

public void addMethod(MethodDef def)
Specified by:
addMethod in interface Builder

createTypeVariable

public TypeVariable createTypeVariable(TypeVariableDef typeVariableDef)

createTypeVariable

public TypeVariable createTypeVariable(java.lang.String name,
                                       java.util.List typeParams)

addField

public void addField(FieldDef def)
Specified by:
addField in interface Builder

setAnnotations

private void setAnnotations(AbstractBaseJavaEntity entity)

addAnnotation

public void addAnnotation(Annotation annotation)
Specified by:
addAnnotation in interface Builder

getSource

public JavaSource getSource()