Class JavadocTagContinuationIndentationCheck

All Implemented Interfaces:
Configurable, Contextualizable

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.
  • Notes: This check does not validate the indentation of lines inside pre tags.
Since:
6.0
  • Field Details

  • Constructor Details

  • Method Details

    • 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 class AbstractJavadocCheck
      Returns:
      the default javadoc token types
      See Also:
    • getRequiredJavadocTokens

      public int[] getRequiredJavadocTokens()
      Description copied from class: AbstractJavadocCheck
      The javadoc tokens that this check must be registered for.
      Overrides:
      getRequiredJavadocTokens in class AbstractJavadocCheck
      Returns:
      the javadoc token set this must be registered for.
      See Also:
    • visitJavadocToken

      public void visitJavadocToken(DetailNode ast)
      Description copied from class: AbstractJavadocCheck
      Called to process a Javadoc token.
      Specified by:
      visitJavadocToken in class AbstractJavadocCheck
      Parameters:
      ast - the token to process
    • getTargetedTextNodes

      Returns all targeted text nodes from the given AST node. This method decides whether to process the node as a description node or as an HTML element node and delegates to the appropriate helper method.
      Parameters:
      ast - the AST node to process
      Returns:
      list of targeted text nodes
    • getTargetedTextNodesInsideHtmlElement

      Returns all targeted text nodes within an HTML element subtree.
      Parameters:
      ast - the HTML element AST node
      Returns:
      list of targeted text nodes inside the HTML element
    • subtreeContainsAttributeValue

      private static boolean subtreeContainsAttributeValue(DetailNode node)
      Checks whether the given subtree node represents part of an HTML tag structure that may contain attribute values.
      Parameters:
      node - the AST node to check
      Returns:
      true if the subtree may contain attribute values, false otherwise
    • getTargetedTextNodesInsideDescription

      Returns all targeted text nodes inside a description node.
      Parameters:
      descriptionNode - the DESCRIPTION node to process
      Returns:
      list of targeted text nodes inside the description node
    • isTargetTextNode

      private static boolean isTargetTextNode(DetailNode node)
      Determines whether the given node is a targeted node.
      Parameters:
      node - the AST node to check
      Returns:
      true if the node is a targeted node, false otherwise
    • isBeforePreTag

      private static boolean isBeforePreTag(DetailNode node)
      Checks if a node is located before a pre tag.
      Parameters:
      node - the node to check
      Returns:
      true if the node is before a pre tag, false otherwise
    • isInsidePreTag

      private static boolean isInsidePreTag(DetailNode node)
      Checks if a node is inside a pre tag.
      Parameters:
      node - the node to check
      Returns:
      true if the node is inside a pre tag, false otherwise
    • isTextOrAttributeValueNode

      private static boolean isTextOrAttributeValueNode(DetailNode node)
      Checks whether the given node is either a TEXT node or an ATTRIBUTE_VALUE node.
      Parameters:
      node - the AST node to check
      Returns:
      true if the node is a TEXT or ATTRIBUTE_VALUE node, false otherwise
    • isViolation

      private boolean isViolation(DetailNode textNode)
      Checks if a text node meets the criteria for a violation. If the text is shorter than offset 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 than offset characters, then a violation is detected if any of the first offset characters are not blank.
      Parameters:
      textNode - the node to check.
      Returns:
      true if the node has a violation.
    • isBlockDescription

      private static boolean isBlockDescription(DetailNode description)
      Checks if the given description node is part of a block Javadoc tag.
      Parameters:
      description - the node to check
      Returns:
      true if the node is inside a block tag, false otherwise
    • 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.