## com.puppycrawl.tools.checkstyle.checks.coding
Class MissingSwitchDefaultCheck

    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.DescendantTokenCheck
                      com.puppycrawl.tools.checkstyle.checks.coding.MissingSwitchDefaultCheck

All Implemented Interfaces:
  Configurable, Contextualizable

    public class MissingSwitchDefaultCheck

extends DescendantTokenCheck

Checks that switch statement has "default" clause.

Rationale: It's usually a good idea to introduce a default case in every switch statement. Even if the developer is sure that all currently possible cases are covered, this should be expressed in the default branch, e.g. by using an assertion. This way the code is protected aginst later changes, e.g. introduction of new types in an enumeration type.

An example of how to configure the check is:

     <module name="MissingSwitchDefault"/>

Author:
  o_sukhodolsky

Constructor Summary
`MissingSwitchDefaultCheck()` Creates new instance of the check.

Method Summary
`int[]` `getAcceptableTokens()` The configurable token set.
`int[]` `getDefaultTokens()` Returns the default token a check is interested in.

Methods inherited from class com.puppycrawl.tools.checkstyle.checks.DescendantTokenCheck
`setLimitedTokens, setMaximumDepth, setMaximumMessage, setMaximumNumber, setMinimumDepth, setMinimumMessage, setMinimumNumber, setSumTokenCounts, visitToken`

Methods inherited from class com.puppycrawl.tools.checkstyle.api.Check
`beginTree, destroy, finishTree, 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
`getCustomMessages, getId, getMessageBundle, getSeverity, getSeverityLevel, 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

### MissingSwitchDefaultCheck

    public MissingSwitchDefaultCheck()

  Creates new instance of the check.

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.

  Overrides:
    `getDefaultTokens` in class `DescendantTokenCheck`
  Returns:
    the default tokens
  See Also:
    `TokenTypes`

### getAcceptableTokens

    public int[] getAcceptableTokens()

  Description copied from class: `Check`
  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.

  Overrides:
    `getAcceptableTokens` in class `DescendantTokenCheck`
  Returns:
    the token set this check is designed for.
  See Also:
    `TokenTypes`

Copyright © 2001-2011. All Rights Reserved.