Class RegexpCheck

  • All Implemented Interfaces:
    Configurable, Contextualizable

    public class RegexpCheck
    extends AbstractCheck

    A check that makes sure that a specified pattern exists (or not) in the file.

    An example of how to configure the check to make sure a copyright statement is included in the file (but without requirements on where in the file it should be):

     <module name="RegexpCheck">
        <property name="format" value="This code is copyrighted"/>
     </module>
     

    And to make sure the same statement appears at the beginning of the file.

     <module name="RegexpCheck">
        <property name="format" value="\AThis code is copyrighted"/>
     </module>
     
    • Field Detail

      • MSG_ILLEGAL_REGEXP

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

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

        public static final String MSG_DUPLICATE_REGEXP
        A key is pointing to the warning message text in "messages.properties" file.
        See Also:
        Constant Field Values
    • Constructor Detail

      • RegexpCheck

        public RegexpCheck()
    • Method Detail

      • setMessage

        public void setMessage​(String message)
        Setter for message property.
        Parameters:
        message - custom message which should be used in report.
      • setIgnoreComments

        public void setIgnoreComments​(boolean ignoreComments)
        Sets if matches within comments should be ignored.
        Parameters:
        ignoreComments - True if comments should be ignored.
      • setIllegalPattern

        public void setIllegalPattern​(boolean illegalPattern)
        Sets if pattern is illegal, otherwise pattern is required.
        Parameters:
        illegalPattern - True if pattern is not allowed.
      • setErrorLimit

        public void setErrorLimit​(int errorLimit)
        Sets the limit on the number of errors to report.
        Parameters:
        errorLimit - the number of errors to report.
      • setDuplicateLimit

        public void setDuplicateLimit​(int duplicateLimit)
        Sets the maximum number of instances of required pattern allowed.
        Parameters:
        duplicateLimit - negative values mean no duplicate checking, any positive value is used as the limit.
      • setFormat

        public final void setFormat​(Pattern pattern)
        Set the format to the specified regular expression.
        Parameters:
        pattern - the new pattern
        Throws:
        org.apache.commons.beanutils.ConversionException - unable to parse format
      • 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 class AbstractCheck
        Returns:
        the default tokens
        See Also:
        TokenTypes
      • 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 class AbstractCheck
        Returns:
        the token set this check is designed for.
        See Also:
        TokenTypes
      • getRequiredTokens

        public int[] getRequiredTokens()
        Description copied from class: AbstractCheck
        The tokens that this check must be registered for.
        Specified by:
        getRequiredTokens in class AbstractCheck
        Returns:
        the token set this must be registered for.
        See Also:
        TokenTypes
      • beginTree

        public void beginTree​(DetailAST rootAST)
        Description copied from class: AbstractCheck
        Called before the starting to process a tree. Ideal place to initialize information that is to be collected whilst processing a tree.
        Overrides:
        beginTree in class AbstractCheck
        Parameters:
        rootAST - the root of the tree