public class JavadocTypeCheck extends AbstractCheck
Checks the Javadoc comments for type definitions. By default, does
not check for author or version tags. The scope to verify is specified using the Scope
class and defaults to Scope.PRIVATE. To verify another scope, set property
scope to one of the Scope constants. To define the format for an author
tag or a version tag, set property authorFormat or versionFormat respectively to a
regular expression.
Does not perform checks for author and version tags for inner classes, as they should be redundant because of outer class.
Error messages about type parameters and record components for which no param tags are present
can be suppressed by defining property allowMissingParamTags.
scope - Specify the visibility scope where Javadoc comments are checked.
Type is com.puppycrawl.tools.checkstyle.api.Scope.
Default value is private.
excludeScope - Specify the visibility scope where Javadoc
comments are not checked.
Type is com.puppycrawl.tools.checkstyle.api.Scope.
Default value is null.
authorFormat - Specify the pattern for @author tag.
Type is java.util.regex.Pattern.
Default value is null.
versionFormat - Specify the pattern for @version tag.
Type is java.util.regex.Pattern.
Default value is null.
allowMissingParamTags - Control whether to ignore violations
when a class has type parameters but does not have matching param tags in the Javadoc.
Type is boolean.
Default value is false.
allowUnknownTags - Control whether to ignore violations when
a Javadoc tag is not recognised.
Type is boolean.
Default value is false.
allowedAnnotations - Specify the list of annotations that allow
missed documentation. Only short names are allowed, e.g. Generated.
Type is java.lang.String[].
Default value is Generated.
tokens - tokens to check
Type is java.lang.String[].
Validation type is tokenSet.
Default value is:
INTERFACE_DEF,
CLASS_DEF,
ENUM_DEF,
ANNOTATION_DEF,
RECORD_DEF.
To configure the default check:
<module name="JavadocType"/>
To configure the check for public scope:
<module name="JavadocType"> <property name="scope" value="public"/> </module>
To configure the check for an @author tag:
<module name="JavadocType"> <property name="authorFormat" value="\S"/> </module>
To configure the check for a CVS revision version tag:
<module name="JavadocType"> <property name="versionFormat" value="\$Revision.*\$"/> </module>
To configure the check for private classes only:
<module name="JavadocType"> <property name="scope" value="private"/> <property name="excludeScope" value="package"/> </module>
Example that allows missing comments for classes annotated with
@SpringBootApplication and @Configuration:
@SpringBootApplication // no violations about missing comment on class
public class Application {}
@Configuration // no violations about missing comment on class
class DatabaseConfiguration {}
Use following configuration:
<module name="JavadocType"> <property name="allowedAnnotations" value="SpringBootApplication,Configuration"/> </module>
Parent is com.puppycrawl.tools.checkstyle.TreeWalker
Violation Message Keys:
javadoc.unknownTag
javadoc.unusedTag
javadoc.unusedTagGeneral
type.missingTag
type.tagFormat
AutomaticBean.OutputStreamOptions| Modifier and Type | Field and Description |
|---|---|
static java.lang.String |
MSG_MISSING_TAG
A key is pointing to the warning message text in "messages.properties"
file.
|
static java.lang.String |
MSG_TAG_FORMAT
A key is pointing to the warning message text in "messages.properties"
file.
|
static java.lang.String |
MSG_UNKNOWN_TAG
A key is pointing to the warning message text in "messages.properties"
file.
|
static java.lang.String |
MSG_UNUSED_TAG
A key is pointing to the warning message text in "messages.properties"
file.
|
static java.lang.String |
MSG_UNUSED_TAG_GENERAL
A key is pointing to the warning message text in "messages.properties"
file.
|
| Constructor and Description |
|---|
JavadocTypeCheck() |
| Modifier and Type | Method and Description |
|---|---|
int[] |
getAcceptableTokens()
The configurable token set.
|
int[] |
getDefaultTokens()
Returns the default token a check is interested in.
|
int[] |
getRequiredTokens()
The tokens that this check must be registered for.
|
void |
setAllowedAnnotations(java.lang.String... userAnnotations)
Setter to specify the list of annotations that allow missed documentation.
|
void |
setAllowMissingParamTags(boolean flag)
Setter to control whether to ignore violations when a class has type parameters but
does not have matching param tags in the Javadoc.
|
void |
setAllowUnknownTags(boolean flag)
Setter to control whether to ignore violations when a Javadoc tag is not recognised.
|
void |
setAuthorFormat(java.util.regex.Pattern pattern)
Setter to specify the pattern for
@author tag. |
void |
setExcludeScope(Scope excludeScope)
Setter to specify the visibility scope where Javadoc comments are not checked.
|
void |
setScope(Scope scope)
Setter to specify the visibility scope where Javadoc comments are checked.
|
void |
setVersionFormat(java.util.regex.Pattern pattern)
Setter to specify the pattern for
@version tag. |
void |
visitToken(DetailAST ast)
Called to process a token.
|
beginTree, clearMessages, destroy, finishTree, getFileContents, getLine, getLines, getMessages, getTabWidth, getTokenNames, init, isCommentNodesRequired, leaveToken, log, log, log, setFileContents, setTabWidth, setTokensfinishLocalSetup, getCustomMessages, getId, getMessageBundle, getSeverity, getSeverityLevel, setId, setSeverityconfigure, contextualize, getConfiguration, setupChildpublic static final java.lang.String MSG_UNKNOWN_TAG
public static final java.lang.String MSG_TAG_FORMAT
public static final java.lang.String MSG_MISSING_TAG
public static final java.lang.String MSG_UNUSED_TAG
public static final java.lang.String MSG_UNUSED_TAG_GENERAL
public JavadocTypeCheck()
public void setScope(Scope scope)
scope - a scope.public void setExcludeScope(Scope excludeScope)
excludeScope - a scope.public void setAuthorFormat(java.util.regex.Pattern pattern)
@author tag.pattern - a pattern.public void setVersionFormat(java.util.regex.Pattern pattern)
@version tag.pattern - a pattern.public void setAllowMissingParamTags(boolean flag)
flag - a Boolean valuepublic void setAllowUnknownTags(boolean flag)
flag - a Boolean valuepublic void setAllowedAnnotations(java.lang.String... userAnnotations)
Generated.userAnnotations - user's value.public int[] getDefaultTokens()
AbstractCheckgetDefaultTokens in class AbstractCheckTokenTypespublic int[] getAcceptableTokens()
AbstractCheckgetAcceptableTokens in class AbstractCheckTokenTypespublic int[] getRequiredTokens()
AbstractCheckgetRequiredTokens in class AbstractCheckTokenTypespublic void visitToken(DetailAST ast)
AbstractCheckvisitToken in class AbstractCheckast - the token to processCopyright © 2001-2020. All Rights Reserved.