com.puppycrawl.tools.checkstyle

Class Checker

Implemented Interfaces:
Configurable, Contextualizable, MessageDispatcher

public class Checker
extends AutomaticBean
implements MessageDispatcher

This class provides the functionality to check a set of files.

Authors:
Oliver Burn
Stephane Bailliez
lkuehne

Constructor Summary

Checker()
Creates a new Checker instance.

Method Summary

void
addFileSetCheck(FileSetCheck aFileSetCheck)
Adds a FileSetCheck to the list of FileSetChecks that is executed in process().
void
addFilter(Filter aFilter)
Adds a filter to the end of the audit event filter chain.
void
addListener(AuditListener aListener)
Add the listener that will be used to receive events from the audit.
void
destroy()
Cleans up the object.
void
finishLocalSetup()
protected void
fireAuditFinished()
notify all listeners about the audit end
protected void
fireAuditStarted()
notify all listeners about the audit start
void
fireErrors(String aFileName, LocalizedMessage aErrors)
notify all listeners about the errors in a file.
void
fireFileFinished(String aFileName)
Notify all listeners about the end of a file audit.
void
fireFileStarted(String aFileName)
Notify all listeners about the beginning of a file audit.
String
normalize(String aPath)
"normalize" the given absolute path.
int
process(File[] aFiles)
Processes a set of files with all FileSetChecks.
void
removeFilter(Filter aFilter)
Removes filter.
void
removeListener(AuditListener aListener)
Removes a given listener.
void
setBasedir(String aBasedir)
void
setClassloader(ClassLoader aLoader)
Sets the classloader that is used to contextualize filesetchecks.
void
setLocaleCountry(String aLocaleCountry)
void
setLocaleLanguage(String aLocaleLanguage)
void
setModuleFactory(ModuleFactory aModuleFactory)
Sets the factory for creating submodules.
void
setSeverity(String aSeverity)
Sets the severity level.
protected void
setupChild(Configuration aChildConf)
Instantiates, configures and registers a child AbstractFilter or FileSetCheck that is specified in the provided configuration.

Methods inherited from class com.puppycrawl.tools.checkstyle.api.AutomaticBean

configure, contextualize, finishLocalSetup, getConfiguration, setupChild

Constructor Details

Checker

public Checker()
            throws CheckstyleException
Creates a new Checker instance. The instance needs to be contextualized and configured.

Throws:
CheckstyleException - if an error occurs

Method Details

addFileSetCheck

public void addFileSetCheck(FileSetCheck aFileSetCheck)
Adds a FileSetCheck to the list of FileSetChecks that is executed in process().

Parameters:
aFileSetCheck - the additional FileSetCheck


addFilter

public void addFilter(Filter aFilter)
Adds a filter to the end of the audit event filter chain.

Parameters:
aFilter - the additional filter


addListener

public void addListener(AuditListener aListener)
Add the listener that will be used to receive events from the audit.

Parameters:
aListener - the nosy thing


destroy

public void destroy()
Cleans up the object. *


finishLocalSetup

public void finishLocalSetup()
            throws CheckstyleException
Overrides:
finishLocalSetup in interface AutomaticBean

See Also:
AutomaticBean


fireAuditFinished

protected void fireAuditFinished()
notify all listeners about the audit end


fireAuditStarted

protected void fireAuditStarted()
notify all listeners about the audit start


fireErrors

public void fireErrors(String aFileName,
                       LocalizedMessage aErrors)
notify all listeners about the errors in a file.

Parameters:
aFileName - the audited file
aErrors - the audit errors from the file


fireFileFinished

public void fireFileFinished(String aFileName)
Notify all listeners about the end of a file audit.
Specified by:
fireFileFinished in interface MessageDispatcher

Parameters:
aFileName - the audited file


fireFileStarted

public void fireFileStarted(String aFileName)
Notify all listeners about the beginning of a file audit.
Specified by:
fireFileStarted in interface MessageDispatcher

Parameters:
aFileName - the file to be audited


normalize

public String normalize(String aPath)
"normalize" the given absolute path.

This includes:

  • Uppercase the drive letter if there is one.
  • Remove redundant slashes after the drive spec.
  • resolve all ./, .\, ../ and ..\ sequences.
  • DOS style paths that start with a drive letter will have \ as the separator.

Parameters:
aPath - a path for "normalizing"

Returns:
"normalized" file name


process

public int process(File[] aFiles)
Processes a set of files with all FileSetChecks. Once this is done, it is highly recommended to call for the destroy method to close and remove the listeners.

Parameters:
aFiles - the list of files to be audited.

Returns:
the total number of errors found

See Also:
destroy()


removeFilter

public void removeFilter(Filter aFilter)
Removes filter.

Parameters:
aFilter - filter to remove.


removeListener

public void removeListener(AuditListener aListener)
Removes a given listener.

Parameters:
aListener - a listener to remove


setBasedir

public void setBasedir(String aBasedir)

Parameters:
aBasedir - the base directory to strip off in filenames


setClassloader

public final void setClassloader(ClassLoader aLoader)
Sets the classloader that is used to contextualize filesetchecks. Some Check implementations will use that classloader to improve the quality of their reports, e.g. to load a class and then analyze it via reflection.

Parameters:
aLoader - the new classloader


setLocaleCountry

public void setLocaleCountry(String aLocaleCountry)

Parameters:
aLocaleCountry - the country to report messages *


setLocaleLanguage

public void setLocaleLanguage(String aLocaleLanguage)

Parameters:
aLocaleLanguage - the language to report messages *


setModuleFactory

public void setModuleFactory(ModuleFactory aModuleFactory)
Sets the factory for creating submodules.

Parameters:
aModuleFactory - the factory for creating FileSetChecks


setSeverity

public final void setSeverity(String aSeverity)
Sets the severity level. The string should be one of the names defined in the SeverityLevel class.

Parameters:
aSeverity - The new severity level

See Also:
SeverityLevel


setupChild

protected void setupChild(Configuration aChildConf)
            throws CheckstyleException
Instantiates, configures and registers a child AbstractFilter or FileSetCheck that is specified in the provided configuration.
Overrides:
setupChild in interface AutomaticBean

See Also:
AutomaticBean