Class JavadocTagContinuationIndentationCheck
- java.lang.Object
-
- com.puppycrawl.tools.checkstyle.AbstractAutomaticBean
-
- com.puppycrawl.tools.checkstyle.api.AbstractViolationReporter
-
- com.puppycrawl.tools.checkstyle.api.AbstractCheck
-
- com.puppycrawl.tools.checkstyle.checks.javadoc.AbstractJavadocCheck
-
- com.puppycrawl.tools.checkstyle.checks.javadoc.JavadocTagContinuationIndentationCheck
-
- All Implemented Interfaces:
Configurable
,Contextualizable
public class JavadocTagContinuationIndentationCheck extends AbstractJavadocCheck
Checks the indentation of the continuation lines in block tags. That is whether the continued description of at clauses should be indented or not. If the text is not properly indented it throws a violation. A continuation line is when the description starts/spans past the line with the tag. Default indentation required is at least 4, but this can be changed with the help of properties below.-
Property
offset
- Specify how many spaces to use for new indentation level. Type isint
. Default value is4
. -
Property
violateExecutionOnNonTightHtml
- Control when to print violations if the Javadoc being examined by this check violates the tight html rules defined at Tight-HTML Rules. Type isboolean
. Default value isfalse
.
Parent is
com.puppycrawl.tools.checkstyle.TreeWalker
Violation Message Keys:
-
javadoc.missed.html.close
-
javadoc.parse.rule.error
-
javadoc.unclosedHtml
-
javadoc.wrong.singleton.html.tag
-
tag.continuation.indent
- Since:
- 6.0
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class com.puppycrawl.tools.checkstyle.AbstractAutomaticBean
AbstractAutomaticBean.OutputStreamOptions
-
-
Field Summary
Fields Modifier and Type Field Description private static int
DEFAULT_INDENTATION
Default tag continuation indentation.static String
MSG_KEY
A key is pointing to the warning message text in "messages.properties" file.private int
offset
Specify how many spaces to use for new indentation level.-
Fields inherited from class com.puppycrawl.tools.checkstyle.checks.javadoc.AbstractJavadocCheck
MSG_JAVADOC_MISSED_HTML_CLOSE, MSG_JAVADOC_PARSE_RULE_ERROR, MSG_JAVADOC_WRONG_SINGLETON_TAG, MSG_KEY_UNCLOSED_HTML_TAG
-
-
Constructor Summary
Constructors Constructor Description JavadocTagContinuationIndentationCheck()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private static List<DetailNode>
getAllNewlineNodes(DetailNode descriptionNode)
Finds and collects all NEWLINE nodes inside DESCRIPTION node.int[]
getDefaultJavadocTokens()
Returns the default javadoc token types a check is interested in.int[]
getRequiredJavadocTokens()
The javadoc tokens that this check must be registered for.private static boolean
isInlineDescription(DetailNode description)
Checks, if description node is a description of in-line tag.private boolean
isViolation(DetailNode textNode)
Checks if a text node meets the criteria for a violation.void
setOffset(int offset)
Setter to specify how many spaces to use for new indentation level.void
visitJavadocToken(DetailNode ast)
Called to process a Javadoc token.-
Methods inherited from class com.puppycrawl.tools.checkstyle.checks.javadoc.AbstractJavadocCheck
acceptJavadocWithNonTightHtml, beginJavadocTree, beginTree, destroy, finishJavadocTree, finishTree, getAcceptableJavadocTokens, getAcceptableTokens, getBlockCommentAst, getDefaultTokens, getRequiredTokens, init, isCommentNodesRequired, leaveJavadocToken, setJavadocTokens, setViolateExecutionOnNonTightHtml, visitToken
-
Methods inherited from class com.puppycrawl.tools.checkstyle.api.AbstractCheck
clearViolations, getFileContents, getFilePath, getLine, getLineCodePoints, getLines, getTabWidth, getTokenNames, getViolations, 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.AbstractAutomaticBean
configure, contextualize, getConfiguration, setupChild
-
-
-
-
Field Detail
-
MSG_KEY
public static final String MSG_KEY
A key is pointing to the warning message text in "messages.properties" file.- See Also:
- Constant Field Values
-
DEFAULT_INDENTATION
private static final int DEFAULT_INDENTATION
Default tag continuation indentation.- See Also:
- Constant Field Values
-
offset
private int offset
Specify how many spaces to use for new indentation level.
-
-
Constructor Detail
-
JavadocTagContinuationIndentationCheck
public JavadocTagContinuationIndentationCheck()
-
-
Method Detail
-
setOffset
public void setOffset(int offset)
Setter to specify how many spaces to use for new indentation level.- Parameters:
offset
- custom value.- Since:
- 6.0
-
getDefaultJavadocTokens
public int[] getDefaultJavadocTokens()
Description copied from class:AbstractJavadocCheck
Returns the default javadoc token types a check is interested in.- Specified by:
getDefaultJavadocTokens
in classAbstractJavadocCheck
- Returns:
- the default javadoc token types
- See Also:
JavadocTokenTypes
-
getRequiredJavadocTokens
public int[] getRequiredJavadocTokens()
Description copied from class:AbstractJavadocCheck
The javadoc tokens that this check must be registered for.- Overrides:
getRequiredJavadocTokens
in classAbstractJavadocCheck
- Returns:
- the javadoc token set this must be registered for.
- See Also:
JavadocTokenTypes
-
visitJavadocToken
public void visitJavadocToken(DetailNode ast)
Description copied from class:AbstractJavadocCheck
Called to process a Javadoc token.- Specified by:
visitJavadocToken
in classAbstractJavadocCheck
- Parameters:
ast
- the token to process
-
isViolation
private boolean isViolation(DetailNode textNode)
Checks if a text node meets the criteria for a violation. If the text is shorter thanoffset
characters, then a violation is detected if the text is not blank or the next node is not a newline. If the text is longer thanoffset
characters, then a violation is detected if any of the firstoffset
characters are not blank.- Parameters:
textNode
- the node to check.- Returns:
- true if the node has a violation.
-
getAllNewlineNodes
private static List<DetailNode> getAllNewlineNodes(DetailNode descriptionNode)
Finds and collects all NEWLINE nodes inside DESCRIPTION node.- Parameters:
descriptionNode
- DESCRIPTION node.- Returns:
- List with NEWLINE nodes.
-
isInlineDescription
private static boolean isInlineDescription(DetailNode description)
Checks, if description node is a description of in-line tag.- Parameters:
description
- DESCRIPTION node.- Returns:
- true, if description node is a description of in-line tag.
-
-