Class ExcessivePublicCountRule
java.lang.Object
net.sourceforge.pmd.properties.AbstractPropertySource
net.sourceforge.pmd.lang.rule.AbstractRule
net.sourceforge.pmd.lang.java.rule.AbstractJavaRule
net.sourceforge.pmd.lang.java.rule.AbstractJavaRulechainRule
net.sourceforge.pmd.lang.java.rule.internal.AbstractJavaCounterCheckRule<ASTTypeDeclaration>
net.sourceforge.pmd.lang.java.rule.design.ExcessivePublicCountRule
- All Implemented Interfaces:
AstVisitor,JavaVisitor,Rule,PropertySource
public class ExcessivePublicCountRule
extends net.sourceforge.pmd.lang.java.rule.internal.AbstractJavaCounterCheckRule<ASTTypeDeclaration>
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. Furthermore, increased effort will be required to thoroughly test the class.
- Author:
- aglover
-
Field Summary
Fields inherited from interface net.sourceforge.pmd.lang.rule.Rule
VIOLATION_SUPPRESS_REGEX_DESCRIPTOR, VIOLATION_SUPPRESS_XPATH_DESCRIPTOR -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected intprotected intgetMetric(ASTTypeDeclaration node) protected booleanisViolation(ASTTypeDeclaration node, int reportLevel) Deprecated.since 7.18.0.Methods inherited from class net.sourceforge.pmd.lang.java.rule.internal.AbstractJavaCounterCheckRule
isIgnored, visitJavaNodeMethods inherited from class net.sourceforge.pmd.lang.java.rule.AbstractJavaRulechainRule
buildTargetSelectorMethods inherited from class net.sourceforge.pmd.lang.java.rule.AbstractJavaRule
apply, visitNodeMethods inherited from class net.sourceforge.pmd.lang.rule.AbstractRule
addExample, asCtx, deepCopy, dysfunctionReason, end, equals, getDescription, getExamples, getExternalInfoUrl, getLanguage, getMaximumLanguageVersion, getMessage, getMinimumLanguageVersion, getName, getPriority, getPropertySourceType, getRuleClass, getRuleSetName, getSince, getTargetSelector, hashCode, isDeprecated, setDeprecated, setDescription, setExternalInfoUrl, setLanguage, setMaximumLanguageVersion, setMessage, setMinimumLanguageVersion, setName, setPriority, setRuleClass, setRuleSetName, setSince, startMethods inherited from class net.sourceforge.pmd.properties.AbstractPropertySource
definePropertyDescriptor, getOverriddenPropertiesByPropertyDescriptor, getOverriddenPropertyDescriptors, getPropertiesByPropertyDescriptor, getProperty, getPropertyDescriptor, getPropertyDescriptors, hasDescriptor, isPropertyOverridden, setPropertyMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface net.sourceforge.pmd.lang.ast.AstVisitor
cannotVisitMethods inherited from interface net.sourceforge.pmd.lang.java.ast.JavaVisitor
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, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visitMethods inherited from interface net.sourceforge.pmd.properties.PropertySource
definePropertyDescriptor, getOverriddenPropertiesByPropertyDescriptor, getOverriddenPropertyDescriptors, getPropertiesByPropertyDescriptor, getProperty, getPropertyDescriptor, getPropertyDescriptors, hasDescriptor, isPropertyOverridden, setPropertyMethods inherited from interface net.sourceforge.pmd.lang.rule.Rule
initialize
-
Constructor Details
-
ExcessivePublicCountRule
public ExcessivePublicCountRule()
-
-
Method Details
-
defaultReportLevel
protected int defaultReportLevel()- Specified by:
defaultReportLevelin classnet.sourceforge.pmd.lang.java.rule.internal.AbstractJavaCounterCheckRule<ASTTypeDeclaration>
-
isViolation
Deprecated.since 7.18.0. This method is not used anymore and shouldn't be implemented. -
getMetric
- Specified by:
getMetricin classnet.sourceforge.pmd.lang.java.rule.internal.AbstractJavaCounterCheckRule<ASTTypeDeclaration>
-