public abstract class AbstractClassLibrary extends Object implements ClassLibrary
Constructor and Description |
---|
AbstractClassLibrary()
constructor for root ClassLibrary
|
AbstractClassLibrary(AbstractClassLibrary parent)
constructor for chained ClassLibrary
|
Modifier and Type | Method and Description |
---|---|
protected abstract boolean |
containsClassReference(String name)
This method is used to detect if there's a match with this classname.
|
JavaClass |
getJavaClass(String name)
First checks if there's a JavaClass available in the private context by this name.
|
JavaClass |
getJavaClass(String name,
boolean createStub)
Try to retrieve the JavaClass by the (binary) name.
|
Collection<JavaClass> |
getJavaClasses()
Get all the classes of the current
AbstractClassLibrary . |
protected Collection<JavaClass> |
getJavaClasses(com.thoughtworks.qdox.library.AbstractClassLibrary.ClassLibraryFilter filter)
Subclasses can call this method to gather all JavaClass object, including those from the parent.
|
Collection<JavaModule> |
getJavaModules() |
JavaPackage |
getJavaPackage(String name)
Get the JavaPackage or null if it's not possible
|
Collection<JavaPackage> |
getJavaPackages()
Get all packages of the current
AbstractClassLibrary . |
protected Collection<JavaPackage> |
getJavaPackages(com.thoughtworks.qdox.library.AbstractClassLibrary.ClassLibraryFilter filter) |
Collection<JavaSource> |
getJavaSources()
Return all JavaSources of the current library.
|
protected Collection<JavaSource> |
getJavaSources(com.thoughtworks.qdox.library.AbstractClassLibrary.ClassLibraryFilter filter) |
protected Builder |
getModelBuilder()
If there's a modelBuilderFactory available, ask it for a new instance.
|
protected Builder |
getModelBuilder(URL url) |
protected ModelBuilderFactory |
getModelBuilderFactory() |
protected ModelWriterFactory |
getModelWriterFactory() |
boolean |
hasClassReference(String name)
First checks if the context already has a JavaClass with this name.
|
protected abstract JavaClass |
resolveJavaClass(String name)
The implementation should check it's sources to see if it can build a JavaClass Model If not, just return null;
Once found it will be mapped, so there's no need to keep a reference to this object.
|
protected abstract JavaPackage |
resolveJavaPackage(String name) |
void |
setModelBuilderFactory(ModelBuilderFactory factory)
Set the ModelBuilderFactory for this classLibrary.
|
void |
setModelWriterFactory(ModelWriterFactory factory)
Set the ModelWriterFactory for this class.
|
public AbstractClassLibrary()
public AbstractClassLibrary(AbstractClassLibrary parent)
parent
- the parent librarypublic Collection<JavaModule> getJavaModules()
getJavaModules
in interface ClassLibrary
public final JavaClass getJavaClass(String name)
getJavaClass
in interface ClassLibrary
name
- the binary name of the classnull
public final JavaClass getJavaClass(String name, boolean createStub)
ClassLibrary
true
make a stub, otherwise return null
getJavaClass
in interface ClassLibrary
name
- the name of the classcreateStub
- force creation of a stub if the class can't be foundnull
depending on the value of createStub.protected abstract JavaClass resolveJavaClass(String name)
name
- the fully qualified namenull
public Collection<JavaSource> getJavaSources()
ClassLibrary
getJavaSources
in interface ClassLibrary
null
protected final Collection<JavaSource> getJavaSources(com.thoughtworks.qdox.library.AbstractClassLibrary.ClassLibraryFilter filter)
filter
- the classlibrary filterpublic Collection<JavaClass> getJavaClasses()
AbstractClassLibrary
.
Subclasses can overwrite this method by including the following code
public List<JavaClass> getClasses() { return getJavaClasses( new ClassLibraryFilter() { public boolean accept( AbstractClassLibrary classLibrary ) { return true; } }); }This example would return all created
JavaClass
objects, including those from the classloaders.getJavaClasses
in interface ClassLibrary
protected final Collection<JavaClass> getJavaClasses(com.thoughtworks.qdox.library.AbstractClassLibrary.ClassLibraryFilter filter)
filter
- the classlibrary filterpublic Collection<JavaPackage> getJavaPackages()
AbstractClassLibrary
.
Subclasses can overwrite this method by including the following code
public List<JavaPackage> getJavaPackages() { return getJavaPackages( new ClassLibraryFilter() { public boolean accept( AbstractClassLibrary classLibrary ) { return true; } }); }This example would return all created
JavaPackage
objects, including those from the classloaders.getJavaPackages
in interface ClassLibrary
public final JavaPackage getJavaPackage(String name)
ClassLibrary
getJavaPackage
in interface ClassLibrary
name
- the fully qualified namenull
protected abstract JavaPackage resolveJavaPackage(String name)
protected final Collection<JavaPackage> getJavaPackages(com.thoughtworks.qdox.library.AbstractClassLibrary.ClassLibraryFilter filter)
public boolean hasClassReference(String name)
hasClassReference
in interface ClassLibrary
name
- the fully qualified nametrue
if there is a reference, otherwise false
protected abstract boolean containsClassReference(String name)
name
- the fully qualified name of the classpublic final void setModelBuilderFactory(ModelBuilderFactory factory)
factory
- the model builder factorypublic final void setModelWriterFactory(ModelWriterFactory factory)
factory
- the model writer factoryprotected final ModelWriterFactory getModelWriterFactory()
protected final ModelBuilderFactory getModelBuilderFactory()
protected Builder getModelBuilder()
null
Copyright © 2002–2024. All rights reserved.