net.sourceforge.pmd.rules
Class ExcessivePublicCount

java.lang.Object
  extended by net.sourceforge.pmd.CommonAbstractRule
      extended by net.sourceforge.pmd.AbstractJavaRule
          extended by net.sourceforge.pmd.stat.StatisticalRule
              extended by net.sourceforge.pmd.rules.design.ExcessiveNodeCountRule
                  extended by net.sourceforge.pmd.rules.ExcessivePublicCount
All Implemented Interfaces:
JavaParserVisitor, Rule

public class ExcessivePublicCount
extends ExcessiveNodeCountRule

Author:
aglover

Class Name: ExcessivePublicCount

Rule attempts to count all public methods and public attributes defined in a class.

If a class has a high number of public operations, it might be wise to consider whether it would be appropriate to divide it into subclasses.

A large proportion of public members and operations means the class has high potential to be affected by external classes. Futhermore, increased effort will be required to thoroughly test the class.


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
ExcessivePublicCount()
           
 
Method Summary
 java.lang.Object visit(ASTFieldDeclaration node, java.lang.Object data)
          Method counts ONLY public class attributes which are not PUBLIC and static- these usually represent constants....
 java.lang.Object visit(ASTMethodDeclarator node, java.lang.Object data)
          Method counts ONLY public methods.
 
Methods inherited from class net.sourceforge.pmd.rules.design.ExcessiveNodeCountRule
visit
 
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, 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

ExcessivePublicCount

public ExcessivePublicCount()
Method Detail

visit

public java.lang.Object visit(ASTMethodDeclarator node,
                              java.lang.Object data)
Method counts ONLY public methods.

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

visit

public java.lang.Object visit(ASTFieldDeclaration node,
                              java.lang.Object data)
Method counts ONLY public class attributes which are not PUBLIC and static- these usually represent constants....

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


Copyright © 2002-2011 InfoEther. All Rights Reserved.