com.puppycrawl.tools.checkstyle.checks.sizes
Class MethodLengthCheck

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.sizes.MethodLengthCheck
All Implemented Interfaces:
Configurable, Contextualizable

public class MethodLengthCheck
extends Check

Checks for long methods.

Rationale: If a method becomes very long it is hard to understand. Therefore long methods should usually be refactored into several individual methods that focus on a specific task.

The default maximum method length is 150 lines. To change the maximum number of lines, set property max.

An example of how to configure the check is:

 <module name="MethodLength"/>
 

An example of how to configure the check so that it accepts methods with at most 60 lines is:

 <module name="MethodLength">
    <property name="max" value="60"/>
 </module>
 

Author:
Lars Kühne

Constructor Summary
MethodLengthCheck()
           
 
Method Summary
 int[] getDefaultTokens()
          Returns the default token a check is interested in.
 void setCountEmpty(boolean aCountEmpty)
           
 void setMax(int aLength)
           
 void visitToken(DetailAST aAST)
          Called to process a token.
 
Methods inherited from class com.puppycrawl.tools.checkstyle.api.Check
beginTree, destroy, finishTree, getAcceptableTokens, getClassLoader, getFileContents, getLines, getRequiredTokens, getTabWidth, getTokenNames, init, leaveToken, 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

MethodLengthCheck

public MethodLengthCheck()
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

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

setMax

public void setMax(int aLength)
Parameters:
aLength - the maximum length of a method.

setCountEmpty

public void setCountEmpty(boolean aCountEmpty)
Parameters:
aCountEmpty - whether to count empty and single line comments of the form //.

Back to the Checkstyle Home Page