Class AbstractInjectionChecker

  • All Implemented Interfaces:
    org.sonar.plugins.java.api.JavaCheck, org.sonar.plugins.java.api.JavaFileScanner
    Direct Known Subclasses:
    SQLInjectionCheck

    public abstract class AbstractInjectionChecker
    extends org.sonar.plugins.java.api.IssuableSubscriptionVisitor
    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected String parameterName  
      • Fields inherited from class org.sonar.java.ast.visitors.SubscriptionVisitor

        context
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      boolean isConstant​(org.sonar.plugins.java.api.semantic.Symbol symbol)  
      protected boolean isDynamicString​(org.sonar.plugins.java.api.tree.Tree methodTree, org.sonar.plugins.java.api.tree.ExpressionTree arg, org.sonar.plugins.java.api.semantic.Symbol currentlyChecking)  
      protected boolean isDynamicString​(org.sonar.plugins.java.api.tree.Tree methodTree, org.sonar.plugins.java.api.tree.ExpressionTree arg, org.sonar.plugins.java.api.semantic.Symbol currentlyChecking, boolean firstLevel)  
      protected boolean isIdentifierDynamicString​(org.sonar.plugins.java.api.tree.Tree methodTree, org.sonar.plugins.java.api.tree.IdentifierTree arg, org.sonar.plugins.java.api.semantic.Symbol currentlyChecking, boolean firstLevel)  
      List<org.sonar.plugins.java.api.tree.Tree.Kind> nodesToVisit()  
      void setContext​(org.sonar.plugins.java.api.JavaFileScannerContext context)  
      protected void setParameterNameFromArgument​(org.sonar.plugins.java.api.tree.ExpressionTree arg)  
      • Methods inherited from class org.sonar.plugins.java.api.IssuableSubscriptionVisitor

        addIssue, addIssueOnFile, reportIssue, reportIssue, reportIssue, scanTree
      • Methods inherited from class org.sonar.java.ast.visitors.SubscriptionVisitor

        hasSemantic, leaveFile, leaveNode, scanFile, visitNode, visitToken, visitTrivia
    • Field Detail

      • parameterName

        protected String parameterName
    • Constructor Detail

      • AbstractInjectionChecker

        public AbstractInjectionChecker()
    • Method Detail

      • setContext

        public void setContext​(org.sonar.plugins.java.api.JavaFileScannerContext context)
        Overrides:
        setContext in class org.sonar.java.ast.visitors.SubscriptionVisitor
      • nodesToVisit

        public List<org.sonar.plugins.java.api.tree.Tree.Kind> nodesToVisit()
        Specified by:
        nodesToVisit in class org.sonar.java.ast.visitors.SubscriptionVisitor
      • isDynamicString

        protected boolean isDynamicString​(org.sonar.plugins.java.api.tree.Tree methodTree,
                                          org.sonar.plugins.java.api.tree.ExpressionTree arg,
                                          @Nullable
                                          org.sonar.plugins.java.api.semantic.Symbol currentlyChecking)
      • isDynamicString

        protected boolean isDynamicString​(org.sonar.plugins.java.api.tree.Tree methodTree,
                                          org.sonar.plugins.java.api.tree.ExpressionTree arg,
                                          @Nullable
                                          org.sonar.plugins.java.api.semantic.Symbol currentlyChecking,
                                          boolean firstLevel)
      • isIdentifierDynamicString

        protected boolean isIdentifierDynamicString​(org.sonar.plugins.java.api.tree.Tree methodTree,
                                                    org.sonar.plugins.java.api.tree.IdentifierTree arg,
                                                    @Nullable
                                                    org.sonar.plugins.java.api.semantic.Symbol currentlyChecking,
                                                    boolean firstLevel)
      • isConstant

        public boolean isConstant​(org.sonar.plugins.java.api.semantic.Symbol symbol)
      • setParameterNameFromArgument

        protected void setParameterNameFromArgument​(org.sonar.plugins.java.api.tree.ExpressionTree arg)