Class AbstractCheck

    • Method Detail

      • getDefaultTokens

        public abstract int[] getDefaultTokens()
        Returns the default token a check is interested in. Only used if the configuration for a check does not define the tokens.
        Returns:
        the default tokens
        See Also:
        TokenTypes
      • getAcceptableTokens

        public abstract int[] getAcceptableTokens()
        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.
        Returns:
        the token set this check is designed for.
        See Also:
        TokenTypes
      • getRequiredTokens

        public abstract int[] getRequiredTokens()
        The tokens that this check must be registered for.
        Returns:
        the token set this must be registered for.
        See Also:
        TokenTypes
      • isCommentNodesRequired

        public boolean isCommentNodesRequired()
        Whether comment nodes are required or not.
        Returns:
        false as a default value.
      • setTokens

        public final void setTokens​(String... strRep)
        Adds a set of tokens the check is interested in.
        Parameters:
        strRep - the string representation of the tokens interested in
      • getTokenNames

        public final Set<StringgetTokenNames()
        Returns the tokens registered for the check.
        Returns:
        the set of token names
      • init

        public void init()
        Initialize the check. This is the time to verify that the check has everything required to perform its job.
      • destroy

        public void destroy()
        Destroy the check. It is being retired from service.
      • beginTree

        public void beginTree​(DetailAST rootAST)
        Called before the starting to process a tree. Ideal place to initialize information that is to be collected whilst processing a tree.
        Parameters:
        rootAST - the root of the tree
      • finishTree

        public void finishTree​(DetailAST rootAST)
        Called after finished processing a tree. Ideal place to report on information collected whilst processing a tree.
        Parameters:
        rootAST - the root of the tree
      • visitToken

        public void visitToken​(DetailAST ast)
        Called to process a token.
        Parameters:
        ast - the token to process
      • leaveToken

        public void leaveToken​(DetailAST ast)
        Called after all the child nodes have been process.
        Parameters:
        ast - the token leaving
      • setFileContents

        public final void setFileContents​(FileContents contents)
        Set the file contents associated with the tree.
        Parameters:
        contents - the manager
      • getFileContents

        @Deprecated(since="9.3")
        public final FileContents getFileContents()
        Deprecated.
        Usage of this method is no longer accepted. Please use AST based methods instead.
        Returns the file contents associated with the tree.
        Returns:
        the file contents
      • getTabWidth

        protected final int getTabWidth()
        Get tab width to report audit events with.
        Returns:
        the tab width to audit events with
      • setTabWidth

        public final void setTabWidth​(int tabWidth)
        Set the tab width to report audit events with.
        Parameters:
        tabWidth - an int value
      • log

        public final void log​(int line,
                              String key,
                              Object... args)
        Description copied from class: AbstractViolationReporter
        Log a message that has no column information.
        Specified by:
        log in class AbstractViolationReporter
        Parameters:
        line - the line number where the audit event was found
        key - the message that describes the audit event
        args - the details of the message
        See Also:
        MessageFormat
      • log

        public final void log​(int lineNo,
                              int colNo,
                              String key,
                              Object... args)
        Description copied from class: AbstractViolationReporter
        Log a message that has column information.
        Specified by:
        log in class AbstractViolationReporter
        Parameters:
        lineNo - the line number where the audit event was found
        colNo - the column number where the audit event was found
        key - the message that describes the audit event
        args - the details of the message
        See Also:
        MessageFormat
      • log

        public final void log​(DetailAST ast,
                              String key,
                              Object... args)
        Helper method to log a Violation.
        Parameters:
        ast - a node to get line id column numbers associated with the violation
        key - key to locale violation format
        args - arguments to format
      • getLines

        public final String[] getLines()
        Returns the lines associated with the tree.
        Returns:
        the file contents
      • getLine

        public final String getLine​(int index)
        Returns the line associated with the tree.
        Parameters:
        index - index of the line
        Returns:
        the line from the file contents
      • getFilePath

        public final String getFilePath()
        Returns full path to the file.
        Returns:
        full path to file.
      • getLineCodePoints

        public final int[] getLineCodePoints​(int index)
        Returns code point representation of file text from given line number.
        Parameters:
        index - index of the line
        Returns:
        the array of Unicode code points