Class JavadocParagraphCheck

  • All Implemented Interfaces:
    Configurable, Contextualizable

    public class JavadocParagraphCheck
    extends AbstractJavadocCheck
    Checks that:
    • There is one blank line between each of two paragraphs and one blank line before the at-clauses block if it is present.
    • Each paragraph but the first has <p> immediately before the first word, with no space after.

    The check can be specified by option allowNewlineParagraph, which says whether the <p> tag should be placed immediately before the first word.

    Default configuration:

     <module name="JavadocParagraph"/>
     

    To allow newlines and spaces immediately after the <p> tag:

     <module name="JavadocParagraph">
          <property name="allowNewlineParagraph"
                       value=="false"/>
     </module">
     

    In case of allowNewlineParagraph set to false the following example will not have any violations:

       /**
        * <p>
        * Some Javadoc.
        *
        * <p>  Some Javadoc.
        *
        * <p>
        * <pre>
        * Some preformatted Javadoc.
        * </pre>
        *
        */
     
    • Field Detail

      • MSG_TAG_AFTER

        public static final java.lang.String MSG_TAG_AFTER
        A key is pointing to the warning message text in "messages.properties" file.
        See Also:
        Constant Field Values
      • MSG_LINE_BEFORE

        public static final java.lang.String MSG_LINE_BEFORE
        A key is pointing to the warning message text in "messages.properties" file.
        See Also:
        Constant Field Values
      • MSG_REDUNDANT_PARAGRAPH

        public static final java.lang.String MSG_REDUNDANT_PARAGRAPH
        A key is pointing to the warning message text in "messages.properties" file.
        See Also:
        Constant Field Values
      • MSG_MISPLACED_TAG

        public static final java.lang.String MSG_MISPLACED_TAG
        A key is pointing to the warning message text in "messages.properties" file.
        See Also:
        Constant Field Values
      • allowNewlineParagraph

        private boolean allowNewlineParagraph
        Whether the <p> tag should be placed immediately before the first word.
    • Constructor Detail

      • JavadocParagraphCheck

        public JavadocParagraphCheck()
    • Method Detail

      • setAllowNewlineParagraph

        public void setAllowNewlineParagraph​(boolean value)
        Sets allowNewlineParagraph.
        Parameters:
        value - value to set.
      • checkEmptyLine

        private void checkEmptyLine​(DetailNode newline)
        Determines whether or not the next line after empty line has paragraph tag in the beginning.
        Parameters:
        newline - NEWLINE node.
      • checkParagraphTag

        private void checkParagraphTag​(DetailNode tag)
        Determines whether or not the line with paragraph tag has previous empty line.
        Parameters:
        tag - html tag.
      • getNearestNode

        private static DetailNode getNearestNode​(DetailNode node)
        Returns nearest node.
        Parameters:
        node - DetailNode node.
        Returns:
        nearest node.
      • isEmptyLine

        private static boolean isEmptyLine​(DetailNode newLine)
        Determines whether or not the line is empty line.
        Parameters:
        newLine - NEWLINE node.
        Returns:
        true, if line is empty line.
      • isFirstParagraph

        private static boolean isFirstParagraph​(DetailNode paragraphTag)
        Determines whether or not the line with paragraph tag is first line in javadoc.
        Parameters:
        paragraphTag - paragraph tag.
        Returns:
        true, if line with paragraph tag is first line in javadoc.
      • getNearestEmptyLine

        private static DetailNode getNearestEmptyLine​(DetailNode node)
        Finds and returns nearest empty line in javadoc.
        Parameters:
        node - DetailNode node.
        Returns:
        Some nearest empty line in javadoc.
      • isLastEmptyLine

        private static boolean isLastEmptyLine​(DetailNode newLine)
        Tests if NEWLINE node is a last node in javadoc.
        Parameters:
        newLine - NEWLINE node.
        Returns:
        true, if NEWLINE node is a last node in javadoc.
      • isImmediatelyFollowedByText

        private static boolean isImmediatelyFollowedByText​(DetailNode tag)
        Tests whether the paragraph tag is immediately followed by the text.
        Parameters:
        tag - html tag.
        Returns:
        true, if the paragraph tag is immediately followed by the text.