Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.puppycrawl.tools.checkstyle.checks.sizes
Class AnonInnerLengthCheck

    java.lang.Object
      com.puppycrawl.tools.checkstyle.api.AutomaticBean
          com.puppycrawl.tools.checkstyle.api.AbstractViolationReporter
              com.puppycrawl.tools.checkstyle.api.Check
                  com.puppycrawl.tools.checkstyle.checks.sizes.AnonInnerLengthCheck

All Implemented Interfaces:
  Configurable, Contextualizable

public class AnonInnerLengthCheck
extends Check

Checks for long anonymous inner classes.

Rationale: If an anonymous inner class becomes very long it is hard to understand and to see the flow of the method where the class is defined. Therefore long anonymous inner classes should usually be refactored into a named inner class. See also Bloch, Effective Java, p. 93.

The default maximum anonymous inner class length is 20 lines. To change the maximum number of lines, set property max.

An example of how to configure the check is:

     <module name="AnonInnerLength"/>

An example of how to configure the check so that it accepts anonymous inner classes with up to 60 lines is:

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

Author:
  Rob Worth

Constructor Summary
`AnonInnerLengthCheck()`

Method Summary
`int[]` | `getDefaultTokens()` Returns the default token a check is interested in.
`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

### AnonInnerLengthCheck

    public AnonInnerLengthCheck()

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 an anonymous inner class.

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Back to the Checkstyle Home Page
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD