Class WallProvider

java.lang.Object
com.alibaba.druid.wall.WallProvider
Direct Known Subclasses:
ClickhouseWallProvider, DB2WallProvider, MySqlWallProvider, OracleWallProvider, PGWallProvider, SQLiteWallProvider, SQLServerWallProvider

public abstract class WallProvider extends Object
  • Field Details

    • config

      protected final WallConfig config
    • commentDeniedStat

      public final WallDenyStat commentDeniedStat
    • dbType

      protected DbType dbType
    • checkCount

      protected final AtomicLong checkCount
    • hardCheckCount

      protected final AtomicLong hardCheckCount
    • whiteListHitCount

      protected final AtomicLong whiteListHitCount
    • blackListHitCount

      protected final AtomicLong blackListHitCount
    • syntaxErrorCount

      protected final AtomicLong syntaxErrorCount
    • violationCount

      protected final AtomicLong violationCount
    • violationEffectRowCount

      protected final AtomicLong violationEffectRowCount
  • Constructor Details

  • Method Details

    • getName

      public String getName()
    • setName

      public void setName(String name)
    • getAttributes

      public Map<String,Object> getAttributes()
    • reset

      public void reset()
    • getTableStats

      public ConcurrentMap<String,WallTableStat> getTableStats()
    • getFunctionStats

      public ConcurrentMap<String,WallFunctionStat> getFunctionStats()
    • getSqlStat

      public WallSqlStat getSqlStat(String sql)
    • getTableStat

      public WallTableStat getTableStat(String tableName)
    • addUpdateCount

      public void addUpdateCount(WallSqlStat sqlStat, long updateCount)
    • addFetchRowCount

      public void addFetchRowCount(WallSqlStat sqlStat, long fetchRowCount)
    • getTableStatWithLowerName

      public WallTableStat getTableStatWithLowerName(String lowerCaseName)
    • getFunctionStat

      public WallFunctionStat getFunctionStat(String functionName)
    • getFunctionStatWithLowerName

      public WallFunctionStat getFunctionStatWithLowerName(String lowerCaseName)
    • getConfig

      public WallConfig getConfig()
    • addWhiteSql

      public WallSqlStat addWhiteSql(String sql, Map<String,WallSqlTableStat> tableStats, Map<String,WallSqlFunctionStat> functionStats, boolean syntaxError)
    • addBlackSql

      public WallSqlStat addBlackSql(String sql, Map<String,WallSqlTableStat> tableStats, Map<String,WallSqlFunctionStat> functionStats, List<Violation> violations, boolean syntaxError)
    • getWhiteList

      public Set<String> getWhiteList()
    • getSqlList

      public Set<String> getSqlList()
    • getBlackList

      public Set<String> getBlackList()
    • clearCache

      public void clearCache()
    • clearWhiteList

      public void clearWhiteList()
    • clearBlackList

      public void clearBlackList()
    • getWhiteSql

      public WallSqlStat getWhiteSql(String sql)
    • getBlackSql

      public WallSqlStat getBlackSql(String sql)
    • whiteContains

      public boolean whiteContains(String sql)
    • createParser

      public abstract SQLStatementParser createParser(String sql)
    • createWallVisitor

      public abstract WallVisitor createWallVisitor()
    • createExportParameterVisitor

      public abstract ExportParameterVisitor createExportParameterVisitor()
    • checkValid

      public boolean checkValid(String sql)
    • incrementCommentDeniedCount

      public void incrementCommentDeniedCount()
    • checkDenyFunction

      public boolean checkDenyFunction(String functionName)
    • checkDenySchema

      public boolean checkDenySchema(String schemaName)
    • checkDenyTable

      public boolean checkDenyTable(String tableName)
    • checkReadOnlyTable

      public boolean checkReadOnlyTable(String tableName)
    • getCommentDenyStat

      public WallDenyStat getCommentDenyStat()
    • check

      public WallCheckResult check(String sql)
    • ispPrivileged

      public static boolean ispPrivileged()
    • doPrivileged

      public static <T> T doPrivileged(PrivilegedAction<T> action)
    • setTenantValue

      public static void setTenantValue(Object value)
    • getTenantValue

      public static Object getTenantValue()
    • getWhiteListHitCount

      public long getWhiteListHitCount()
    • getBlackListHitCount

      public long getBlackListHitCount()
    • getSyntaxErrorCount

      public long getSyntaxErrorCount()
    • getCheckCount

      public long getCheckCount()
    • getViolationCount

      public long getViolationCount()
    • getHardCheckCount

      public long getHardCheckCount()
    • getViolationEffectRowCount

      public long getViolationEffectRowCount()
    • addViolationEffectRowCount

      public void addViolationEffectRowCount(long rowCount)
    • getStatValue

      public WallProviderStatValue getStatValue(boolean reset)
    • getStatsMap

      public Map<String,Object> getStatsMap()
    • isWhiteListEnable

      public boolean isWhiteListEnable()
    • setWhiteListEnable

      public void setWhiteListEnable(boolean whiteListEnable)
    • isBlackListEnable

      public boolean isBlackListEnable()
    • setBlackListEnable

      public void setBlackListEnable(boolean blackListEnable)