private class AbstractClassCouplingCheck.ClassContext
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
private java.lang.String |
className
Own class name.
|
private int |
columnNo
Column number of class definition.
|
private int |
lineNo
Line number of class definition.
|
private AbstractClassCouplingCheck.FileContext |
parentContext
Parent file context.
|
private java.util.Set<java.lang.String> |
referencedClassNames
Set of referenced classes.
|
Constructor and Description |
---|
ClassContext(AbstractClassCouplingCheck.FileContext parentContext,
java.lang.String className,
int lineNo,
int columnNo)
Create new context associated with given class.
|
Modifier and Type | Method and Description |
---|---|
private void |
addReferencedClassName(DetailAST ast)
Adds new referenced class.
|
private void |
addReferencedClassName(java.lang.String referencedClassName)
Adds new referenced class.
|
void |
checkCoupling()
Checks if coupling less than allowed or not.
|
private boolean |
isFromExcludedPackage(java.lang.String candidateClassName)
Checks if given class should be ignored as it belongs to excluded package.
|
private boolean |
isSignificant(java.lang.String candidateClassName)
Checks if given class shouldn't be ignored and not from java.lang.
|
void |
visitLiteralNew(DetailAST ast)
Visits NEW.
|
void |
visitLiteralThrows(DetailAST literalThrows)
Visits throws clause and collects all exceptions we throw.
|
void |
visitType(DetailAST ast)
Visits type.
|
private final AbstractClassCouplingCheck.FileContext parentContext
private final java.util.Set<java.lang.String> referencedClassNames
private final java.lang.String className
private final int lineNo
private final int columnNo
ClassContext(AbstractClassCouplingCheck.FileContext parentContext, java.lang.String className, int lineNo, int columnNo)
parentContext
- Parent file context.className
- name of the given class.lineNo
- line of class definition.columnNo
- column of class definition.public void visitLiteralThrows(DetailAST literalThrows)
literalThrows
- throws to process.public void visitType(DetailAST ast)
ast
- type to process.public void visitLiteralNew(DetailAST ast)
ast
- NEW to process.private void addReferencedClassName(DetailAST ast)
ast
- a node which represents referenced class.private void addReferencedClassName(java.lang.String referencedClassName)
referencedClassName
- class name of the referenced class.public void checkCoupling()
private boolean isSignificant(java.lang.String candidateClassName)
candidateClassName
- class to check.private boolean isFromExcludedPackage(java.lang.String candidateClassName)
candidateClassName
- class to check