Class MissingJavadocTypeCheck
- All Implemented Interfaces:
Configurable
,Contextualizable
Checks for missing Javadoc comments for class, enum, interface, and annotation interface
definitions. The scope to verify is specified using the Scope
class and defaults
to Scope.PUBLIC
. To verify another scope, set property scope to one of the
Scope
constants.
-
Property
scope
- specify the visibility scope where Javadoc comments are checked. Type iscom.puppycrawl.tools.checkstyle.api.Scope
. Default value ispublic
. -
Property
excludeScope
- specify the visibility scope where Javadoc comments are not checked. Type iscom.puppycrawl.tools.checkstyle.api.Scope
. Default value isnull
. -
Property
skipAnnotations
- specify the list of annotations that allow missed documentation. Only short names are allowed, e.g.Generated
. Type isjava.lang.String[]
. Default value isGenerated
. -
Property
tokens
- tokens to check Type isjava.lang.String[]
. Validation type istokenSet
. Default value is: INTERFACE_DEF, CLASS_DEF, ENUM_DEF, ANNOTATION_DEF, RECORD_DEF.
To configure the default check to make sure all public class, enum, interface, and annotation interface, definitions have javadocs:
<module name="MissingJavadocType"/>
Example:
public class PublicClass {} // violation private class PublicClass {} protected class PublicClass {} class PackagePrivateClass {}
To configure the check for private
scope:
<module name="MissingJavadocType"> <property name="scope" value="private"/> </module>
Example:
public class PublicClass {} // violation private class PublicClass {} // violation protected class PublicClass {} // violation class PackagePrivateClass {} // violation
To configure the check for private
classes only:
<module name="MissingJavadocType"> <property name="scope" value="private"/> <property name="excludeScope" value="package"/> </module>
Example:
public class PublicClass {} private class PublicClass {} // violation protected class PublicClass {} class PackagePrivateClass {}
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="MissingJavadocType"> <property name="skipAnnotations" value="SpringBootApplication,Configuration"/> </module>
Parent is com.puppycrawl.tools.checkstyle.TreeWalker
Violation Message Keys:
-
javadoc.missing
- Since:
- 8.20
-
Nested Class Summary
Nested classes/interfaces inherited from class com.puppycrawl.tools.checkstyle.api.AutomaticBean
AutomaticBean.OutputStreamOptions
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final String
A key is pointing to the warning message text in "messages.properties" file. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionint[]
The configurable token set.int[]
Returns the default token a check is interested in.int[]
The tokens that this check must be registered for.void
setExcludeScope
(Scope excludeScope) Setter to specify the visibility scope where Javadoc comments are not checked.void
Setter to specify the visibility scope where Javadoc comments are checked.void
setSkipAnnotations
(String... userAnnotations) Setter to specify the list of annotations that allow missed documentation.void
visitToken
(DetailAST ast) Called to process a token.Methods inherited from class com.puppycrawl.tools.checkstyle.api.AbstractCheck
beginTree, clearMessages, destroy, finishTree, getFileContents, getLine, getLines, getMessages, getTabWidth, getTokenNames, init, isCommentNodesRequired, leaveToken, log, log, log, setFileContents, setTabWidth, setTokens
Methods inherited from class com.puppycrawl.tools.checkstyle.api.AbstractViolationReporter
finishLocalSetup, getCustomMessages, getId, getMessageBundle, getSeverity, getSeverityLevel, setId, setSeverity
Methods inherited from class com.puppycrawl.tools.checkstyle.api.AutomaticBean
configure, contextualize, getConfiguration, setupChild
-
Field Details
-
MSG_JAVADOC_MISSING
A key is pointing to the warning message text in "messages.properties" file.- See Also:
-
-
Constructor Details
-
MissingJavadocTypeCheck
public MissingJavadocTypeCheck()
-
-
Method Details
-
setScope
Setter to specify the visibility scope where Javadoc comments are checked.- Parameters:
scope
- a scope.
-
setExcludeScope
Setter to specify the visibility scope where Javadoc comments are not checked.- Parameters:
excludeScope
- a scope.
-
setSkipAnnotations
Setter to specify the list of annotations that allow missed documentation. Only short names are allowed, e.g.Generated
.- Parameters:
userAnnotations
- user's value.
-
getDefaultTokens
public int[] getDefaultTokens()Description copied from class:AbstractCheck
Returns the default token a check is interested in. Only used if the configuration for a check does not define the tokens.- Specified by:
getDefaultTokens
in classAbstractCheck
- Returns:
- the default tokens
- See Also:
-
getAcceptableTokens
public int[] getAcceptableTokens()Description copied from class:AbstractCheck
The configurable token set. Used to protect Checks against malicious users who specify an unacceptable token set in the configuration file. The default implementation returns the check's default tokens.- Specified by:
getAcceptableTokens
in classAbstractCheck
- Returns:
- the token set this check is designed for.
- See Also:
-
getRequiredTokens
public int[] getRequiredTokens()Description copied from class:AbstractCheck
The tokens that this check must be registered for.- Specified by:
getRequiredTokens
in classAbstractCheck
- Returns:
- the token set this must be registered for.
- See Also:
-
visitToken
Description copied from class:AbstractCheck
Called to process a token.- Overrides:
visitToken
in classAbstractCheck
- Parameters:
ast
- the token to process
-