com.puppycrawl.tools.checkstyle.api

Class Check

public abstract class Check extends AbstractViolationReporter

The base class for checks.

Version: 1.0

Author: Oliver Burn

See Also: Writing your own checks

Method Summary
voidbeginTree(DetailAST aRootAST)
Called before the starting to process a tree.
voiddestroy()
Destroy the check.
voidfinishTree(DetailAST aRootAST)
Called after finished processing a tree.
int[]getAcceptableTokens()
The configurable token set.
ClassLoadergetClassLoader()
Returns the class loader associated with the tree.
abstract int[]getDefaultTokens()
Returns the default token a check is interested in.
FileContentsgetFileContents()
Returns the file contents associated with the tree.
String[]getLines()
Returns the lines associated with the tree.
int[]getRequiredTokens()
The tokens that this check must be registered for.
protected intgetTabWidth()
SetgetTokenNames()
Returns the tokens registered for the check.
voidinit()
Initialse the check.
voidleaveToken(DetailAST aAST)
Called after all the child nodes have been process.
protected voidlog(int aLine, String aKey, Object[] aArgs)
Log an error message.
protected voidlog(int aLineNo, int aColNo, String aKey, Object[] aArgs)
Helper method to log a LocalizedMessage.
voidsetClassLoader(ClassLoader aLoader)
Set the class loader associated with the tree.
voidsetFileContents(FileContents aContents)
Set the file contents associated with the tree.
voidsetMessages(LocalizedMessages aMessages)
Set the global object used to collect messages.
voidsetTabWidth(int aTabWidth)
Set the tab width to report errors with.
voidsetTokens(String[] aStrRep)
Adds a set of tokens the check is interested in.
voidvisitToken(DetailAST aAST)
Called to process a token.

Method Detail

beginTree

public void beginTree(DetailAST aRootAST)
Called before the starting to process a tree. Ideal place to initialise information that is to be collected whilst processing a tree.

Parameters: aRootAST the root of the tree

destroy

public void destroy()
Destroy the check. It is being retired from service.

finishTree

public void finishTree(DetailAST aRootAST)
Called after finished processing a tree. Ideal place to report on information collected whilst processing a tree.

Parameters: aRootAST the root of the tree

getAcceptableTokens

public int[] getAcceptableTokens()
The configurable token set. Used to protect Checks against malicious users who specify an unacceptable token set in the configuration file. The default implementation returns the check's default tokens.

Returns: the token set this check is designed for.

See Also: TokenTypes

getClassLoader

public final ClassLoader getClassLoader()
Returns the class loader associated with the tree.

Returns: the class loader

getDefaultTokens

public abstract int[] getDefaultTokens()
Returns the default token a check is interested in. Only used if the configuration for a check does not define the tokens.

Returns: the default tokens

See Also: TokenTypes

getFileContents

public final FileContents getFileContents()
Returns the file contents associated with the tree.

Returns: the file contents

getLines

public final String[] getLines()
Returns the lines associated with the tree.

Returns: the file contents

getRequiredTokens

public int[] getRequiredTokens()
The tokens that this check must be registered for.

Returns: the token set this must be registered for.

See Also: TokenTypes

getTabWidth

protected final int getTabWidth()

Returns: the tab width to report errors with

getTokenNames

public final Set getTokenNames()
Returns the tokens registered for the check.

Returns: the set of token names

init

public void init()
Initialse the check. This is the time to verify that the check has everything required to perform it job.

leaveToken

public void leaveToken(DetailAST aAST)
Called after all the child nodes have been process.

Parameters: aAST the token leaving

log

protected final void log(int aLine, String aKey, Object[] aArgs)
Log an error message.

Parameters: aLine the line number where the error was found aKey the message that describes the error aArgs the details of the message

See Also: java.text.MessageFormat

log

protected final void log(int aLineNo, int aColNo, String aKey, Object[] aArgs)
Helper method to log a LocalizedMessage.

Parameters: aLineNo line number to associate with the message aColNo column number to associate with the message aKey key to locale message format aArgs arguments for message

setClassLoader

public final void setClassLoader(ClassLoader aLoader)
Set the class loader associated with the tree.

Parameters: aLoader the class loader

setFileContents

public final void setFileContents(FileContents aContents)
Set the file contents associated with the tree.

Parameters: aContents the manager

setMessages

public final void setMessages(LocalizedMessages aMessages)
Set the global object used to collect messages.

Parameters: aMessages the messages to log with

setTabWidth

public final void setTabWidth(int aTabWidth)
Set the tab width to report errors with.

Parameters: aTabWidth an int value

setTokens

public final void setTokens(String[] aStrRep)
Adds a set of tokens the check is interested in.

Parameters: aStrRep the string representation of the tokens interested in

visitToken

public void visitToken(DetailAST aAST)
Called to process a token.

Parameters: aAST the token to process