Class SuppressionAnalyzer


  • public class SuppressionAnalyzer
    extends java.lang.Object
    This class encapsulates all of the logic for determining if an rule is suppressed or not.
    • Field Detail

      • SUPPRESS_WARNINGS

        private static final org.codehaus.groovy.ast.ClassNode SUPPRESS_WARNINGS
      • initialized

        private boolean initialized
      • initializationLock

        private final java.lang.Object initializationLock
      • suppressedRuleNames

        private final java.util.Set<java.lang.String> suppressedRuleNames
      • suppressionsByLineNumber

        private final java.util.Map<java.lang.String,​java.util.BitSet> suppressionsByLineNumber
    • Constructor Detail

      • SuppressionAnalyzer

        public SuppressionAnalyzer​(SourceCode source)
    • Method Detail

      • isRuleSuppressed

        public boolean isRuleSuppressed​(Rule rule)
      • filterSuppressedViolations

        public java.util.List<Violation> filterSuppressedViolations​(java.lang.Iterable<Violation> violations)
      • isViolationSuppressed

        public boolean isViolationSuppressed​(Violation violation)
      • init

        private void init()
      • getSuppressionsByLineNumber

        private java.util.Map<java.lang.String,​java.util.BitSet> getSuppressionsByLineNumber​(org.codehaus.groovy.ast.ModuleNode ast)
      • getImportNodes

        private java.util.List<org.codehaus.groovy.ast.ImportNode> getImportNodes​(org.codehaus.groovy.ast.ModuleNode ast)
      • from

        private static <T extends java.util.Collection> T from​(T from)
      • populateLineNumbers

        private static void populateLineNumbers​(org.codehaus.groovy.ast.AnnotatedNode node,
                                                java.util.Map<java.lang.String,​java.util.BitSet> result,
                                                int numLines,
                                                java.lang.String ruleName)
      • getLineCount

        private static int getLineCount​(org.codehaus.groovy.ast.ModuleNode ast)
      • getSuppressedRuleNames

        private static java.util.Collection<java.lang.String> getSuppressedRuleNames​(java.util.Collection<? extends org.codehaus.groovy.ast.AnnotatedNode> imports)
      • getSuppressedRuleNames

        private static java.util.Collection<java.lang.String> getSuppressedRuleNames​(org.codehaus.groovy.ast.AnnotatedNode node)
      • getSuppressWarningsAnnotations

        private static java.util.Set<org.codehaus.groovy.ast.AnnotationNode> getSuppressWarningsAnnotations​(org.codehaus.groovy.ast.AnnotatedNode node)