Package org.codehaus.mojo.animal_sniffer
Class ClassFileVisitor
- java.lang.Object
-
- org.codehaus.mojo.animal_sniffer.ClassFileVisitor
-
- Direct Known Subclasses:
ClassListBuilder
,Main
,SignatureBuilder
,SignatureChecker
public abstract class ClassFileVisitor extends java.lang.Object
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
ClassFileVisitor()
protected
ClassFileVisitor(Logger logger)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description boolean
isCheckJars()
void
process(java.io.File file)
Recursively finds class files and invokesprocess(String, InputStream)
void
process(java.io.File[] files)
Multi-arg version ofprocess(File)
.protected abstract void
process(java.lang.String name, java.io.InputStream image)
void
process(java.nio.file.Path path)
Recursively finds class files and invokesprocess(String, InputStream)
protected void
processClassFile(java.io.File file)
protected void
processDirectory(java.io.File dir)
protected void
processJarFile(java.io.File file)
void
setCheckJars(boolean checkJars)
-
-
-
Field Detail
-
logger
protected final Logger logger
-
checkJars
private boolean checkJars
Whether to check inside.jar
files
-
-
Constructor Detail
-
ClassFileVisitor
protected ClassFileVisitor()
-
ClassFileVisitor
protected ClassFileVisitor(Logger logger)
-
-
Method Detail
-
isCheckJars
public boolean isCheckJars()
-
setCheckJars
public void setCheckJars(boolean checkJars)
-
process
public void process(java.io.File[] files) throws java.io.IOException
Multi-arg version ofprocess(File)
.- Throws:
java.io.IOException
-
process
public void process(java.io.File file) throws java.io.IOException
Recursively finds class files and invokesprocess(String, InputStream)
- Parameters:
file
- Directory full of class files or jar files (in which case all of them are processed recursively), or a class file (in which case that single class is processed), or a jar file (in which case all the classes in this jar file are processed.)- Throws:
java.io.IOException
-
process
public void process(java.nio.file.Path path) throws java.io.IOException
Recursively finds class files and invokesprocess(String, InputStream)
- Parameters:
path
- Directory (or other Path likePaths.get(URI.create("jrt:/modules"))
) full of class files, or a class file (in which case that single class is processed).- Throws:
java.io.IOException
-
processDirectory
protected void processDirectory(java.io.File dir) throws java.io.IOException
- Throws:
java.io.IOException
-
processJarFile
protected void processJarFile(java.io.File file) throws java.io.IOException
- Throws:
java.io.IOException
-
processClassFile
protected void processClassFile(java.io.File file) throws java.io.IOException
- Throws:
java.io.IOException
-
process
protected abstract void process(java.lang.String name, java.io.InputStream image) throws java.io.IOException
- Parameters:
name
- Displayable name to identify what class file we are processingimage
- Class file image.- Throws:
java.io.IOException
-
-