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

## net.sourceforge.pmd.rules.design
Class SwitchDensityRule

    java.lang.Object
      net.sourceforge.pmd.CommonAbstractRule
          net.sourceforge.pmd.AbstractJavaRule
              net.sourceforge.pmd.stat.StatisticalRule
                  net.sourceforge.pmd.rules.design.SwitchDensityRule

All Implemented Interfaces:
  JavaParserVisitor, Rule

    public class SwitchDensityRule

extends StatisticalRule

Author:
  David Dixon-Peugh

  Switch Density - This is the number of statements over the number of cases within a switch. The higher the value, the more work each case is doing.

  Its my theory, that when the Switch Density is high, you should start looking at Subclasses or State Pattern to alleviate the problem.

Field Summary

Fields inherited from class net.sourceforge.pmd.stat.StatisticalRule
`DELTA`

Fields inherited from interface net.sourceforge.pmd.Rule
`LOWEST_PRIORITY, PRIORITIES`

Constructor Summary
`SwitchDensityRule()`

Method Summary
`java.lang.Object` | `visit(ASTStatement statement, java.lang.Object data)`
`java.lang.Object` | `visit(ASTSwitchLabel switchLabel, java.lang.Object data)`
`java.lang.Object` | `visit(ASTSwitchStatement node, java.lang.Object data)`

Methods inherited from class net.sourceforge.pmd.stat.StatisticalRule
`addDataPoint, apply, applyMinimumValue, applyTopScore, getMean, getStdDev, makeViolations, propertiesByName`

Methods inherited from class net.sourceforge.pmd.AbstractJavaRule
`addViolation, addViolation, addViolation, addViolationWithMessage, getDeclaringType, importsPackage, isQualifiedName, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visitAll`

Methods inherited from class net.sourceforge.pmd.CommonAbstractRule
`addExample, addProperties, addProperty, addRuleChainVisit, asFixedMap, asFixedMap, end, equals, getBooleanProperties, getBooleanProperty, getBooleanProperty, getDescription, getDoubleProperties, getDoubleProperty, getDoubleProperty, getExample, getExamples, getExternalInfoUrl, getIntProperties, getIntProperty, getIntProperty, getMessage, getName, getPriority, getPriorityName, getProperties, getRuleChainVisits, getRuleClass, getRuleSetName, getSince, getStringProperties, getStringProperty, getStringProperty, getTypeProperties, getTypeProperty, hashCode, hasProperty, include, propertyDescriptorFor, setDescription, setExternalInfoUrl, setInclude, setMessage, setName, setPriority, setProperties, setProperty, setRuleClass, setRuleSetName, setSince, setUsesDFA, setUsesTypeResolution, start, usesDFA, usesRuleChain, usesTypeResolution`

Methods inherited from class java.lang.Object
`clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### SwitchDensityRule

    public SwitchDensityRule()

Method Detail

### visit

    public java.lang.Object visit(ASTSwitchStatement node,
                                  java.lang.Object data)

  Specified by:
    `visit` in interface `JavaParserVisitor`
  Overrides:
    `visit` in class `AbstractJavaRule`

### visit

    public java.lang.Object visit(ASTStatement statement,
                                  java.lang.Object data)

  Specified by:
    `visit` in interface `JavaParserVisitor`
  Overrides:
    `visit` in class `AbstractJavaRule`

### visit

    public java.lang.Object visit(ASTSwitchLabel switchLabel,
                                  java.lang.Object data)

  Specified by:
    `visit` in interface `JavaParserVisitor`
  Overrides:
    `visit` in class `AbstractJavaRule`

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

Copyright © 2002-2009 InfoEther. All Rights Reserved.