## com.puppycrawl.tools.checkstyle.checks.naming
Class PackageNameCheck

    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.AbstractFormatCheck
                      com.puppycrawl.tools.checkstyle.checks.naming.PackageNameCheck

All Implemented Interfaces:
  Configurable, Contextualizable

    public class PackageNameCheck

extends AbstractFormatCheck

Checks that package names conform to a format specified by the format property. The format is a `regular expression` and defaults to ^[a-z]+(\.[a-zA-Z_][a-zA-Z_0-9]*)*$.

The default format has been chosen to match the requirements in the Java Language specification and the Sun coding conventions. However both underscores and uppercase letters are rather uncommon, so most projects should probably use ^[a-z]+(\.[a-z][a-z0-9]*)*$.

An example of how to configure the check is:

     <module name="PackageName"/>

An example of how to configure the check for package names that begin with `com.puppycrawl.tools.checkstyle` is:

     <module name="PackageName">
        <property name="format"
                  value="^com\.puppycrawl\.tools\.checkstyle(\\.[a-zA-Z_][a-zA-Z_0-9]*)*$"/>
     </module>

Version:
  1.0
Author:
  Oliver Burn

Constructor Summary
`PackageNameCheck()` Creates a new `PackageNameCheck` instance.

Method Summary
`int[]` `getDefaultTokens()` Returns the default token a check is interested in.
`void` `visitToken(DetailAST aAST)` Called to process a token.

Methods inherited from class com.puppycrawl.tools.checkstyle.checks.AbstractFormatCheck
`getFormat, getRegexp, setCompileFlags, setFormat`

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
`getId, getMessageBundle, getSeverity, getSeverityLevel, log, log, log, log, log, log, log, log, log, setId, 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

### PackageNameCheck

    public PackageNameCheck()

  Creates a new `PackageNameCheck` instance.

Method Detail

### getDefaultTokens

    public int[] getDefaultTokens()

  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:
    `TokenTypes`

### visitToken

    public void visitToken(DetailAST aAST)

  Called to process a token.

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

Back to the Checkstyle Home Page