Class CheckstyleAntTask
java.lang.Object
org.apache.tools.ant.ProjectComponent
org.apache.tools.ant.Task
com.puppycrawl.tools.checkstyle.ant.CheckstyleAntTask
- All Implemented Interfaces:
Cloneable
public class CheckstyleAntTask
extends org.apache.tools.ant.Task
An implementation of a ANT task for calling checkstyle. See the documentation
of the task for usage.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic class
Details about a formatter to be used.static class
Poor mans enumeration for the formatter types.static class
Represents a property that consists of a key and value. -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate org.apache.tools.ant.types.Path
Class path to locate class files.private String
Config file containing configuration.private static final String
Poor man's enum for an plain formatter.private static final String
Poor man's enum for an xml formatter.private boolean
Whether to execute ignored modules - some modules may log above their severity depending on their configuration (e.g.private boolean
Whether to fail build on violations.private String
Property to set on violations.private String
Name of file to check.private final List
<org.apache.tools.ant.types.FileSet> Contains the filesets to process.private final List
<CheckstyleAntTask.Formatter> Contains the formatters to log to.private int
The maximum number of errors that are tolerated.private int
The maximum number of warnings that are tolerated.private final List
<CheckstyleAntTask.Property> Contains the Properties to override.private final List
<org.apache.tools.ant.types.Path> Contains the paths to process.private File
The name of the properties file.private static final String
Suffix for time string.Fields inherited from class org.apache.tools.ant.Task
target, taskName, taskType, wrapper
Fields inherited from class org.apache.tools.ant.ProjectComponent
description, location, project
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
addFileset
(org.apache.tools.ant.types.FileSet fileSet) Adds set of files (nested fileset attribute).void
addFormatter
(CheckstyleAntTask.Formatter formatter) Add a formatter.void
addPath
(org.apache.tools.ant.types.Path path) Adds a path.void
addProperty
(CheckstyleAntTask.Property property) Add an override property.org.apache.tools.ant.types.Path
Creates classpath.private Properties
Create the Properties object based on the arguments specified to the ANT task.private RootModule
Creates new instance of the root module.void
execute()
Returns the list of files (full path name) to process.private AuditListener[]
Return the list of listeners set in this task.private void
processFiles
(RootModule rootModule, SeverityLevelCounter warningCounter, String checkstyleVersion) Scans and processes files by means given root module.private void
realExecute
(String checkstyleVersion) Helper implementation to perform execution.retrieveAllScannedFiles
(org.apache.tools.ant.DirectoryScanner scanner, int logIndex) Retrieves all matched files from the given scanner.Returns the list of files (full path name) to process.scanPath
(org.apache.tools.ant.types.Path path, int pathIndex) Scans the given path and retrieves all files for the given path.Retrieves all files from the defined paths.void
setClasspath
(org.apache.tools.ant.types.Path classpath) Set the class path.void
setClasspathRef
(org.apache.tools.ant.types.Reference classpathRef) Set the class path from a reference defined elsewhere.void
Sets configuration file.void
setExecuteIgnoredModules
(boolean omit) Sets flag - whether to execute ignored modules.void
setFailOnViolation
(boolean fail) Sets flag - whether to fail if a violation is found.void
setFailureProperty
(String propertyName) Tells this task to write failure message to the named property when there is a violation.void
Sets file to be checked.void
setMaxErrors
(int maxErrors) Sets the maximum number of errors allowed.void
setMaxWarnings
(int maxWarnings) Sets the maximum number of warnings allowed.void
setProperties
(File props) Sets a properties file for use instead of individually setting them.Methods inherited from class org.apache.tools.ant.Task
bindToOwner, getOwningTarget, getRuntimeConfigurableWrapper, getTaskName, getTaskType, getWrapper, handleErrorFlush, handleErrorOutput, handleFlush, handleInput, handleOutput, init, isInvalid, log, log, log, log, maybeConfigure, perform, reconfigure, setOwningTarget, setRuntimeConfigurableWrapper, setTaskName, setTaskType
Methods inherited from class org.apache.tools.ant.ProjectComponent
clone, getDescription, getLocation, getProject, setDescription, setLocation, setProject
-
Field Details
-
E_XML
Poor man's enum for an xml formatter.- See Also:
-
E_PLAIN
Poor man's enum for an plain formatter.- See Also:
-
TIME_SUFFIX
Suffix for time string.- See Also:
-
paths
Contains the paths to process. -
fileSets
Contains the filesets to process. -
formatters
Contains the formatters to log to. -
overrideProps
Contains the Properties to override. -
classpath
private org.apache.tools.ant.types.Path classpathClass path to locate class files. -
fileName
Name of file to check. -
config
Config file containing configuration. -
failOnViolation
private boolean failOnViolationWhether to fail build on violations. -
failureProperty
Property to set on violations. -
properties
The name of the properties file. -
maxErrors
private int maxErrorsThe maximum number of errors that are tolerated. -
maxWarnings
private int maxWarningsThe maximum number of warnings that are tolerated. -
executeIgnoredModules
private boolean executeIgnoredModulesWhether to execute ignored modules - some modules may log above their severity depending on their configuration (e.g. WriteTag) so need to be included
-
-
Constructor Details
-
CheckstyleAntTask
public CheckstyleAntTask()
-
-
Method Details
-
setFailureProperty
Tells this task to write failure message to the named property when there is a violation.- Parameters:
propertyName
- the name of the property to set in the event of an failure.
-
setFailOnViolation
public void setFailOnViolation(boolean fail) Sets flag - whether to fail if a violation is found.- Parameters:
fail
- whether to fail if a violation is found
-
setMaxErrors
public void setMaxErrors(int maxErrors) Sets the maximum number of errors allowed. Default is 0.- Parameters:
maxErrors
- the maximum number of errors allowed.
-
setMaxWarnings
public void setMaxWarnings(int maxWarnings) Sets the maximum number of warnings allowed. Default isInteger.MAX_VALUE
.- Parameters:
maxWarnings
- the maximum number of warnings allowed.
-
addPath
public void addPath(org.apache.tools.ant.types.Path path) Adds a path.- Parameters:
path
- the path to add.
-
addFileset
public void addFileset(org.apache.tools.ant.types.FileSet fileSet) Adds set of files (nested fileset attribute).- Parameters:
fileSet
- the file set to add
-
addFormatter
Add a formatter.- Parameters:
formatter
- the formatter to add for logging.
-
addProperty
Add an override property.- Parameters:
property
- the property to add
-
setClasspath
public void setClasspath(org.apache.tools.ant.types.Path classpath) Set the class path.- Parameters:
classpath
- the path to locate classes
-
setClasspathRef
public void setClasspathRef(org.apache.tools.ant.types.Reference classpathRef) Set the class path from a reference defined elsewhere.- Parameters:
classpathRef
- the reference to an instance defining the classpath
-
createClasspath
public org.apache.tools.ant.types.Path createClasspath()Creates classpath.- Returns:
- a created path for locating classes
-
setFile
Sets file to be checked.- Parameters:
file
- the file to be checked
-
setConfig
Sets configuration file.- Parameters:
configuration
- the configuration file, URL, or resource to use- Throws:
org.apache.tools.ant.BuildException
- when config was already set
-
setExecuteIgnoredModules
public void setExecuteIgnoredModules(boolean omit) Sets flag - whether to execute ignored modules.- Parameters:
omit
- whether to execute ignored modules
-
setProperties
Sets a properties file for use instead of individually setting them.- Parameters:
props
- the properties File to use
-
execute
public void execute()- Overrides:
execute
in classorg.apache.tools.ant.Task
-
realExecute
Helper implementation to perform execution.- Parameters:
checkstyleVersion
- Checkstyle compile version.
-
processFiles
private void processFiles(RootModule rootModule, SeverityLevelCounter warningCounter, String checkstyleVersion) Scans and processes files by means given root module.- Parameters:
rootModule
- Root module to process fileswarningCounter
- Root Module's counter of warningscheckstyleVersion
- Checkstyle compile version- Throws:
org.apache.tools.ant.BuildException
- if the files could not be processed, or if the build failed due to violations.
-
createRootModule
Creates new instance of the root module.- Returns:
- new instance of the root module
- Throws:
org.apache.tools.ant.BuildException
- if the root module could not be created.
-
createOverridingProperties
Create the Properties object based on the arguments specified to the ANT task.- Returns:
- the properties for property expansion expansion
- Throws:
org.apache.tools.ant.BuildException
- if the properties file could not be loaded.
-
getListeners
Return the list of listeners set in this task.- Returns:
- the list of listeners.
- Throws:
org.apache.tools.ant.BuildException
- if the listeners could not be created.
-
getFilesToCheck
Returns the list of files (full path name) to process.- Returns:
- the list of files included via the fileName, filesets and paths.
-
scanPaths
Retrieves all files from the defined paths.- Returns:
- a list of files defined via paths.
-
scanPath
Scans the given path and retrieves all files for the given path.- Parameters:
path
- A path to scan.pathIndex
- The index of the given path. Used in log messages only.- Returns:
- A list of files, extracted from the given path.
-
scanFileSets
Returns the list of files (full path name) to process.- Returns:
- the list of files included via the filesets.
-
retrieveAllScannedFiles
private List<File> retrieveAllScannedFiles(org.apache.tools.ant.DirectoryScanner scanner, int logIndex) Retrieves all matched files from the given scanner.- Parameters:
scanner
- A directory scanner. Note, thatDirectoryScanner.scan()
must be called before calling this method.logIndex
- A log entry index. Used only for log messages.- Returns:
- A list of files, retrieved from the given scanner.
-