Class FileLengthCheck

  • All Implemented Interfaces:
    Configurable, Contextualizable, FileSetCheck

    public class FileLengthCheck
    extends AbstractFileSetCheck

    Checks for long source files.

    Rationale: If a source file becomes very long it is hard to understand. Therefore long classes should usually be refactored into several individual classes that focus on a specific task.

    The default maximum file length is 2000 lines. To change the maximum number of lines, set property max.

    An example of how to configure the check is:

     <module name="FileLength"/>
     

    An example of how to configure the check so that it accepts files with at most 1500 lines is:

     <module name="FileLength">
        <property name="max" value="1500"/>
     </module>
     
    • Field Detail

      • MSG_KEY

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

        private static final int DEFAULT_MAX_LINES
        Default maximum number of lines.
        See Also:
        Constant Field Values
      • max

        private int max
        The maximum number of lines.
    • Constructor Detail

      • FileLengthCheck

        public FileLengthCheck()
    • Method Detail

      • processFiltered

        protected void processFiltered​(java.io.File file,
                                       java.util.List<java.lang.String> lines)
        Description copied from class: AbstractFileSetCheck
        Called to process a file that matches the specified file extensions.
        Specified by:
        processFiltered in class AbstractFileSetCheck
        Parameters:
        file - the file to be processed
        lines - an immutable list of the contents of the file.
      • setMax

        public void setMax​(int length)
        Sets the maximum length of a Java source file.
        Parameters:
        length - the maximum length of a Java source file