public abstract class AbstractClassCouplingCheck extends AbstractCheck
| Modifier and Type | Class and Description |
|---|---|
private class |
AbstractClassCouplingCheck.ClassContext
Encapsulates information about class coupling.
|
AutomaticBean.OutputStreamOptions| Modifier and Type | Field and Description |
|---|---|
private static java.util.regex.Pattern |
BRACKET_PATTERN
Pattern to match brackets in a full type name.
|
private java.util.Deque<AbstractClassCouplingCheck.ClassContext> |
classesContexts
Stack of class contexts.
|
private static java.util.Set<java.lang.String> |
DEFAULT_EXCLUDED_CLASSES
Class names to ignore.
|
private static java.util.Set<java.lang.String> |
DEFAULT_EXCLUDED_PACKAGES
Package names to ignore.
|
private static java.lang.String |
DOT
A package separator - "."
|
private java.util.List<java.util.regex.Pattern> |
excludeClassesRegexps
Specify user-configured regular expressions to ignore classes.
|
private java.util.Set<java.lang.String> |
excludedClasses
Specify user-configured class names to ignore.
|
private java.util.Set<java.lang.String> |
excludedPackages
Specify user-configured packages to ignore.
|
private java.util.Map<java.lang.String,java.lang.String> |
importedClassPackages
A map of (imported class name -> class name with package) pairs.
|
private int |
max
Specify the maximum threshold allowed.
|
private java.lang.String |
packageName
Current file package.
|
| Modifier | Constructor and Description |
|---|---|
protected |
AbstractClassCouplingCheck(int defaultMax)
Creates new instance of the check.
|
| Modifier and Type | Method and Description |
|---|---|
void |
beginTree(DetailAST ast)
Called before the starting to process a tree.
|
private void |
checkCurrentClassAndRestorePrevious()
Restores previous context.
|
private void |
createNewClassContext(java.lang.String className,
DetailAST ast)
Creates new inner class context with given name and location.
|
int[] |
getDefaultTokens()
Returns the default token a check is interested in.
|
protected abstract java.lang.String |
getLogMessageId()
Returns message key we use for log violations.
|
private void |
leaveClassDef()
Restores previous context.
|
void |
leaveToken(DetailAST ast)
Called after all the child nodes have been process.
|
private void |
registerImport(DetailAST imp)
Registers given import.
|
void |
setExcludeClassesRegexps(java.lang.String... from)
Setter to specify user-configured regular expressions to ignore classes.
|
void |
setExcludedClasses(java.lang.String... excludedClasses)
Setter to specify user-configured class names to ignore.
|
void |
setExcludedPackages(java.lang.String... excludedPackages)
Setter to specify user-configured packages to ignore.
|
void |
setMax(int max)
Setter to specify the maximum threshold allowed.
|
private void |
visitAnnotationType(DetailAST annotationAST)
Visit ANNOTATION literal and get its type to referenced classes of context.
|
private void |
visitClassDef(DetailAST classDef)
Creates new context for a given class.
|
private void |
visitLiteralNew(DetailAST ast)
Visits NEW token for the current class context.
|
private void |
visitLiteralThrows(DetailAST ast)
Visits THROWS token for the current class context.
|
private void |
visitPackageDef(DetailAST pkg)
Stores package of current class we check.
|
void |
visitToken(DetailAST ast)
Called to process a token.
|
private void |
visitType(DetailAST ast)
Visits type token for the current class context.
|
clearViolations, destroy, finishTree, getAcceptableTokens, getFileContents, getLine, getLineCodePoints, getLines, getRequiredTokens, getTabWidth, getTokenNames, getViolations, init, isCommentNodesRequired, log, log, log, setFileContents, setTabWidth, setTokensfinishLocalSetup, getCustomMessages, getId, getMessageBundle, getSeverity, getSeverityLevel, setId, setSeverityconfigure, contextualize, getConfiguration, setupChildprivate static final java.lang.String DOT
private static final java.util.Set<java.lang.String> DEFAULT_EXCLUDED_CLASSES
private static final java.util.Set<java.lang.String> DEFAULT_EXCLUDED_PACKAGES
private static final java.util.regex.Pattern BRACKET_PATTERN
private final java.util.List<java.util.regex.Pattern> excludeClassesRegexps
private final java.util.Map<java.lang.String,java.lang.String> importedClassPackages
private final java.util.Deque<AbstractClassCouplingCheck.ClassContext> classesContexts
private java.util.Set<java.lang.String> excludedClasses
private java.util.Set<java.lang.String> excludedPackages
private int max
private java.lang.String packageName
protected AbstractClassCouplingCheck(int defaultMax)
defaultMax - default value for allowed complexity.protected abstract java.lang.String getLogMessageId()
public final int[] getDefaultTokens()
AbstractCheckgetDefaultTokens in class AbstractCheckTokenTypespublic final void setMax(int max)
max - allowed complexity.public final void setExcludedClasses(java.lang.String... excludedClasses)
excludedClasses - the list of classes to ignore.public void setExcludeClassesRegexps(java.lang.String... from)
from - array representing regular expressions of classes to ignore.public final void setExcludedPackages(java.lang.String... excludedPackages)
excludedPackages - the list of packages to ignore.java.lang.IllegalArgumentException - if there are invalid identifiers among the packages.public final void beginTree(DetailAST ast)
AbstractCheckbeginTree in class AbstractCheckast - the root of the treepublic void visitToken(DetailAST ast)
AbstractCheckvisitToken in class AbstractCheckast - the token to processpublic void leaveToken(DetailAST ast)
AbstractCheckleaveToken in class AbstractCheckast - the token leavingprivate void visitPackageDef(DetailAST pkg)
pkg - package definition.private void visitClassDef(DetailAST classDef)
classDef - class definition node.private void leaveClassDef()
private void registerImport(DetailAST imp)
imp - import definition.private void createNewClassContext(java.lang.String className, DetailAST ast)
className - The class name.ast - The class ast.private void checkCurrentClassAndRestorePrevious()
private void visitType(DetailAST ast)
ast - TYPE token.private void visitLiteralNew(DetailAST ast)
ast - NEW token.private void visitLiteralThrows(DetailAST ast)
ast - THROWS token.private void visitAnnotationType(DetailAST annotationAST)
annotationAST - Annotation ast.Copyright © 2001-2022. All Rights Reserved.