com.puppycrawl.tools.checkstyle.checks.metrics
Class JavaNCSSCheck

java.lang.Object
  extended bycom.puppycrawl.tools.checkstyle.api.AutomaticBean
      extended bycom.puppycrawl.tools.checkstyle.api.AbstractViolationReporter
          extended bycom.puppycrawl.tools.checkstyle.api.Check
              extended bycom.puppycrawl.tools.checkstyle.checks.metrics.JavaNCSSCheck
All Implemented Interfaces:
Configurable, Contextualizable

public class JavaNCSSCheck
extends Check

This check calculates the Non Commenting Source Statements (NCSS) metric for java source files and methods. The check adheres to the JavaNCSS specification and gives the same results as the JavaNCSS tool. The NCSS-metric tries to determine complexity of methods, classes and files by counting the non commenting lines. Roughly said this is (nearly) equivalent to counting the semicolons and opening curly braces.

Author:
Lars Ködderitzsch

Constructor Summary
JavaNCSSCheck()
           
 
Method Summary
 void beginTree(DetailAST aRootAST)
          Called before the starting to process a tree.
 void finishTree(DetailAST aRootAST)
          Called after finished processing a tree.
 int[] getDefaultTokens()
          Returns the default token a check is interested in.
 int[] getRequiredTokens()
          The tokens that this check must be registered for.
 void leaveToken(DetailAST aAST)
          Called after all the child nodes have been process.
 void setClassMaximum(int aClassMax)
          Sets the maximum ncss for a class.
 void setFileMaximum(int aFileMax)
          Sets the maximum ncss for a file.
 void setMethodMaximum(int aMethodMax)
          Sets the maximum ncss for a method.
 void visitToken(DetailAST aAST)
          Called to process a token.
 
Methods inherited from class com.puppycrawl.tools.checkstyle.api.Check
destroy, getAcceptableTokens, getClassLoader, getFileContents, getLines, getTabWidth, getTokenNames, init, log, log, setClassLoader, setFileContents, setMessages, setTabWidth, setTokens
 
Methods inherited from class com.puppycrawl.tools.checkstyle.api.AbstractViolationReporter
getMessageBundle, getSeverity, getSeverityLevel, log, log, log, log, log, log, log, log, log, setSeverity
 
Methods inherited from class com.puppycrawl.tools.checkstyle.api.AutomaticBean
configure, contextualize, finishLocalSetup, getConfiguration, setupChild
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

JavaNCSSCheck

public JavaNCSSCheck()
Method Detail

getDefaultTokens

public int[] getDefaultTokens()
Description copied from class: Check
Returns the default token a check is interested in. Only used if the configuration for a check does not define the tokens.

Specified by:
getDefaultTokens in class Check
Returns:
the default tokens
See Also:
Check.getDefaultTokens()

getRequiredTokens

public int[] getRequiredTokens()
Description copied from class: Check
The tokens that this check must be registered for.

Overrides:
getRequiredTokens in class Check
Returns:
the token set this must be registered for.
See Also:
Check.getRequiredTokens()

beginTree

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

Overrides:
beginTree in class Check
Parameters:
aRootAST - the root of the tree
See Also:
Check

visitToken

public void visitToken(DetailAST aAST)
Description copied from class: Check
Called to process a token.

Overrides:
visitToken in class Check
Parameters:
aAST - the token to process
See Also:
Check

leaveToken

public void leaveToken(DetailAST aAST)
Description copied from class: Check
Called after all the child nodes have been process.

Overrides:
leaveToken in class Check
Parameters:
aAST - the token leaving
See Also:
Check

finishTree

public void finishTree(DetailAST aRootAST)
Description copied from class: Check
Called after finished processing a tree. Ideal place to report on information collected whilst processing a tree.

Overrides:
finishTree in class Check
Parameters:
aRootAST - the root of the tree
See Also:
Check

setFileMaximum

public void setFileMaximum(int aFileMax)
Sets the maximum ncss for a file.

Parameters:
aFileMax - the maximum ncss

setClassMaximum

public void setClassMaximum(int aClassMax)
Sets the maximum ncss for a class.

Parameters:
aClassMax - the maximum ncss

setMethodMaximum

public void setMethodMaximum(int aMethodMax)
Sets the maximum ncss for a method.

Parameters:
aMethodMax - the maximum ncss

Back to the Checkstyle Home Page