org.apache.tools.ant.util.depend
public abstract class AbstractAnalyzer extends Object implements DependencyAnalyzer
Field Summary | |
---|---|
static int | MAX_LOOPS Maximum number of loops for looking for indirect dependencies. |
Constructor Summary | |
---|---|
protected | AbstractAnalyzer() Setup the analyzer |
Method Summary | |
---|---|
void | addClassPath(Path classPath)
Add a classpath to the classpath being used by the analyzer. |
void | addRootClass(String className)
Add a root class. |
void | addSourcePath(Path sourcePath)
Add a source path to the source path used by this analyzer. |
void | config(String name, Object info)
Configure an aspect of the analyzer. |
protected abstract void | determineDependencies(Vector files, Vector classes)
Determine the dependencies of the current set of root classes
|
File | getClassContainer(String classname)
Get the file that contains the class definition
|
Enumeration | getClassDependencies()
Get the list of classes upon which root classes depend. |
Enumeration | getFileDependencies()
Get the list of files in the file system upon which the root classes
depend. |
protected Enumeration | getRootClasses()
Get an enumeration of the root classes
|
File | getSourceContainer(String classname)
Get the file that contains the class source.
|
protected boolean | isClosureRequired()
Indicate if the analyzer is required to follow
indirect class relationships.
|
void | reset()
Reset the dependency list. |
void | setClosure(boolean closure)
Set the closure flag. |
protected abstract boolean | supportsFileDependencies()
Indicate if the particular subclass supports file dependency
information.
|
Parameters: classPath the Path instance specifying the classpath elements
Parameters: className the name of the class in Java dot notation.
Parameters: sourcePath The Path instance specifying the source path elements.
Parameters: name the name of the aspect being configured info the configuration info.
Parameters: files a vector into which Files upon which the root classes depend should be placed. classes a vector of Strings into which the names of classes upon which the root classes depend should be placed.
Parameters: classname the name of the required class
Returns: the file instance, zip or class, containing the class or null if the class could not be found.
Throws: IOException if the files in the classpath cannot be read.
Returns: an enumeration of Strings, each being the name of a Java class in dot notation.
Returns: an enumeration of File instances.
Returns: an enumeration of Strings, each of which is a class name for a root class.
Parameters: classname the name of the required class
Returns: the file instance, zip or java, containing the source or null if the source for the class could not be found.
Throws: IOException if the files in the sourcepath cannot be read.
Returns: true if indirect relationships should be followed.
Parameters: closure true if dependencies should be traversed to determine indirect dependencies.
Returns: true if file dependencies are supported.