|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectnet.sourceforge.pmd.AbstractPropertySource
net.sourceforge.pmd.lang.rule.AbstractRule
net.sourceforge.pmd.lang.java.rule.AbstractJavaRule
net.sourceforge.pmd.lang.java.rule.design.GodClassRule
public class GodClassRule
The God Class Rule detects a the God Class design flaw using metrics. A god class does too many things, is very big and complex. It should be split apart to be more object-oriented. The rule uses the detection strategy described in [1]. The violations are reported against the entire class. [1] Lanza. Object-Oriented Metrics in Practice. Page 80.
Field Summary |
---|
Fields inherited from class net.sourceforge.pmd.AbstractPropertySource |
---|
propertyDescriptors, propertyValuesByDescriptor |
Fields inherited from interface net.sourceforge.pmd.Rule |
---|
VIOLATION_SUPPRESS_REGEX_DESCRIPTOR, VIOLATION_SUPPRESS_XPATH_DESCRIPTOR |
Constructor Summary | |
---|---|
GodClassRule()
|
Method Summary | |
---|---|
Object |
visit(ASTCatchStatement node,
Object data)
|
Object |
visit(ASTCompilationUnit node,
Object data)
Base entry point for the visitor - the compilation unit (everything within one file). |
Object |
visit(ASTConditionalAndExpression node,
Object data)
|
Object |
visit(ASTConditionalExpression node,
Object data)
|
Object |
visit(ASTConditionalOrExpression node,
Object data)
|
Object |
visit(ASTForStatement node,
Object data)
|
Object |
visit(ASTIfStatement node,
Object data)
|
Object |
visit(ASTMethodDeclaration node,
Object data)
|
Object |
visit(ASTPrimaryExpression node,
Object data)
The primary expression node is used to detect access to attributes and method calls. |
Object |
visit(ASTSwitchLabel node,
Object data)
|
Object |
visit(ASTWhileStatement node,
Object data)
|
Methods inherited from class net.sourceforge.pmd.lang.java.rule.AbstractJavaRule |
---|
apply, getDeclaringType, importsPackage, isQualifiedName, isSuppressed, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, 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.AbstractPropertySource |
---|
copyPropertyDescriptors, copyPropertyValues, definePropertyDescriptor, dysfunctionReason, getPropertiesByPropertyDescriptor, getProperty, getPropertyDescriptor, getPropertyDescriptors, hasDescriptor, ignoredProperties, setProperty, useDefaultValueFor, usesDefaultValues |
Methods inherited from class java.lang.Object |
---|
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface net.sourceforge.pmd.PropertySource |
---|
definePropertyDescriptor, dysfunctionReason, getPropertiesByPropertyDescriptor, getProperty, getPropertyDescriptor, getPropertyDescriptors, hasDescriptor, ignoredProperties, setProperty, useDefaultValueFor, usesDefaultValues |
Constructor Detail |
---|
public GodClassRule()
Method Detail |
---|
public Object visit(ASTCompilationUnit node, Object data)
visit
in interface JavaParserVisitor
visit
in class AbstractJavaRule
public Object visit(ASTPrimaryExpression node, Object data)
methodAttributeAccess
map is updated for the current method.
visit
in interface JavaParserVisitor
visit
in class AbstractJavaRule
public Object visit(ASTMethodDeclaration node, Object data)
visit
in interface JavaParserVisitor
visit
in class AbstractJavaRule
public Object visit(ASTConditionalOrExpression node, Object data)
visit
in interface JavaParserVisitor
visit
in class AbstractJavaRule
public Object visit(ASTConditionalAndExpression node, Object data)
visit
in interface JavaParserVisitor
visit
in class AbstractJavaRule
public Object visit(ASTIfStatement node, Object data)
visit
in interface JavaParserVisitor
visit
in class AbstractJavaRule
public Object visit(ASTWhileStatement node, Object data)
visit
in interface JavaParserVisitor
visit
in class AbstractJavaRule
public Object visit(ASTForStatement node, Object data)
visit
in interface JavaParserVisitor
visit
in class AbstractJavaRule
public Object visit(ASTSwitchLabel node, Object data)
visit
in interface JavaParserVisitor
visit
in class AbstractJavaRule
public Object visit(ASTCatchStatement node, Object data)
visit
in interface JavaParserVisitor
visit
in class AbstractJavaRule
public Object visit(ASTConditionalExpression node, Object data)
visit
in interface JavaParserVisitor
visit
in class AbstractJavaRule
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |