public abstract class BaseStringMatchRules
extends java.lang.Object
| 限定符和类型 | 类和说明 |
|---|---|
static class |
BaseStringMatchRules.StringMatchRule
字符串匹配规则基类
|
| 限定符和类型 | 字段和说明 |
|---|---|
protected com.google.common.cache.LoadingCache<java.lang.String,BaseStringMatchRules.StringMatchRule> |
portRuleCache |
| 构造器和说明 |
|---|
BaseStringMatchRules() |
| 限定符和类型 | 方法和说明 |
|---|---|
protected BaseStringMatchRules |
addRule(BaseStringMatchRules.StringMatchRule rule)
添加一条规则
|
BaseStringMatchRules |
addRule(java.lang.String rule)
添加一条规则
|
BaseStringMatchRules |
addRules(java.lang.String rules)
添加一组以,分割的规则
|
java.util.Collection<BaseStringMatchRules.StringMatchRule> |
allRules()
顺序返回所有规则
|
BaseStringMatchRules |
clearCache()
清除rule缓存对象
portRuleCache |
BaseStringMatchRules |
clearRules()
清除所有规则,同时清除缓存规则
|
BaseStringMatchRules.StringMatchRule |
getRule(java.lang.String input)
从规则列表(
rules)中查找服务接口名对应的规则,没有找到返回null查找逻辑: 先以 matchPattern在规则列表key字段查找是否有匹配的规则,有则返回,
如果没有找到再在规则列表中顺序以模糊匹配方式查找是否有匹配的规则,有则返回,
如果没有找到返回null |
BaseStringMatchRules.StringMatchRule |
getRuleByPattern(java.lang.String pattern)
|
BaseStringMatchRules.StringMatchRule |
getRuleCached(java.lang.String input)
|
BaseStringMatchRules.StringMatchRule |
getRuleCached(java.lang.String addationalPrefix,
java.lang.String input)
先以
input调用getRuleCached(String)查找规则,
如果没找到且addationalPrefix不为空且input没有前缀,则将input加上附加前缀addationalPrefix再试一次 |
int |
indexOf(BaseStringMatchRules.StringMatchRule matchRule)
返回指定的规则在规则表中的索引值,
输入参数为
null或没有在规则表中找到完全相同的规则则返回-1 |
protected abstract BaseStringMatchRules.StringMatchRule |
parseRule(java.lang.String rule)
将一条规则字符串解析为 Rule 对象,解析失败则抛出
IllegalArgumentException异常 |
protected java.util.LinkedHashMap<java.lang.String,BaseStringMatchRules.StringMatchRule> |
parseRules(java.lang.String rules)
解析以,分割的多条规则定义
|
java.util.Set<java.lang.String> |
patterns()
顺序返回所有规则的匹配模式字符串
|
BaseStringMatchRules |
removeKey(java.lang.String key)
删除指定的规则
|
BaseStringMatchRules |
replace(java.lang.String value)
替换已经存在的规则
|
int |
sizeOfRules()
返回规则数量
|
static java.lang.String |
stripQuoteOfPrefix(java.lang.String pattern) |
java.lang.String |
toString() |
static java.lang.String |
wrapMatchRule(java.lang.String prefix,
java.lang.String portName)
返回根据
prefix和portName字段生成的匹配规则字符串 |
protected final com.google.common.cache.LoadingCache<java.lang.String,BaseStringMatchRules.StringMatchRule> portRuleCache
protected BaseStringMatchRules addRule(BaseStringMatchRules.StringMatchRule rule)
rule - public BaseStringMatchRules addRule(java.lang.String rule)
rule - public BaseStringMatchRules addRules(java.lang.String rules)
rules - public BaseStringMatchRules removeKey(java.lang.String key)
key - public BaseStringMatchRules replace(java.lang.String value)
value - public BaseStringMatchRules clearRules()
clearCache()public BaseStringMatchRules clearCache()
portRuleCachepublic java.util.Set<java.lang.String> patterns()
public java.util.Collection<BaseStringMatchRules.StringMatchRule> allRules()
public int sizeOfRules()
public BaseStringMatchRules.StringMatchRule getRule(java.lang.String input)
rules)中查找服务接口名对应的规则,没有找到返回nullmatchPattern在规则列表key字段查找是否有匹配的规则,有则返回,
如果没有找到再在规则列表中顺序以模糊匹配方式查找是否有匹配的规则,有则返回,
如果没有找到返回nullinput - 待匹配字符串,为null则返回nullnullpublic int indexOf(BaseStringMatchRules.StringMatchRule matchRule)
null或没有在规则表中找到完全相同的规则则返回-1matchRule - public static java.lang.String stripQuoteOfPrefix(java.lang.String pattern)
public static java.lang.String wrapMatchRule(java.lang.String prefix,
java.lang.String portName)
prefix和portName字段生成的匹配规则字符串public BaseStringMatchRules.StringMatchRule getRuleCached(java.lang.String input)
input - public BaseStringMatchRules.StringMatchRule getRuleCached(java.lang.String addationalPrefix, java.lang.String input)
input调用getRuleCached(String)查找规则,
如果没找到且addationalPrefix不为空且input没有前缀,则将input加上附加前缀addationalPrefix再试一次addationalPrefix - input - getRuleCached(String)public BaseStringMatchRules.StringMatchRule getRuleByPattern(java.lang.String pattern)
pattern - 匹配模式,为null或空则返回nullnullpublic java.lang.String toString()
toString 在类中 java.lang.Objectprotected java.util.LinkedHashMap<java.lang.String,BaseStringMatchRules.StringMatchRule> parseRules(java.lang.String rules)
rules - 以,分割的多条规则定义字符串protected abstract BaseStringMatchRules.StringMatchRule parseRule(java.lang.String rule)
IllegalArgumentException异常rule - 规则定义字符串Copyright © 2023. All Rights Reserved.