类 ExpressionInterpreter
- java.lang.Object
-
- com.alibaba.nacos.naming.selector.interpreter.ExpressionInterpreter
-
public class ExpressionInterpreter extends java.lang.ObjectExpression interpreter for label selector.For now it supports very limited set of syntax rules.
- 作者:
- nokrange
-
-
字段概要
字段 修饰符和类型 字段 说明 private static charCANDprivate static charCEQUALprivate static java.lang.StringCONSUMER_PREFIXprivate static java.lang.StringPROVIDER_PREFIXprivate static java.util.Set<java.lang.String>SUPPORTED_INNER_CONNCETORSprivate static java.util.Set<java.lang.String>SUPPORTED_OUTER_CONNCETORS
-
构造器概要
构造器 构造器 说明 ExpressionInterpreter()
-
方法概要
所有方法 静态方法 具体方法 修饰符和类型 方法 说明 private static intcheckInnerSyntax(java.util.List<java.lang.String> elements, int start)private static intcheckOuterSyntax(java.util.List<java.lang.String> elements, int start)static java.util.List<java.lang.String>getTerms(java.lang.String expression)static java.util.Set<java.lang.String>parseExpression(java.lang.String expression)Parse the label expression.private static intskipEmpty(java.util.List<java.lang.String> elements, int start)
-
-
-
字段详细资料
-
SUPPORTED_INNER_CONNCETORS
private static final java.util.Set<java.lang.String> SUPPORTED_INNER_CONNCETORS
-
SUPPORTED_OUTER_CONNCETORS
private static final java.util.Set<java.lang.String> SUPPORTED_OUTER_CONNCETORS
-
CONSUMER_PREFIX
private static final java.lang.String CONSUMER_PREFIX
- 另请参阅:
- 常量字段值
-
PROVIDER_PREFIX
private static final java.lang.String PROVIDER_PREFIX
- 另请参阅:
- 常量字段值
-
CEQUAL
private static final char CEQUAL
- 另请参阅:
- 常量字段值
-
CAND
private static final char CAND
- 另请参阅:
- 常量字段值
-
-
方法详细资料
-
parseExpression
public static java.util.Set<java.lang.String> parseExpression(java.lang.String expression) throws com.alibaba.nacos.api.exception.NacosExceptionParse the label expression.Currently we support the very single type of expression:
consumer.labelA = provider.labelA & consumer.labelB = provider.labelBLater we will implement a interpreter to parse this expression in a standard LL parser way.- 参数:
expression- the label expression to parse- 返回:
- collection of labels
- 抛出:
com.alibaba.nacos.api.exception.NacosException
-
getTerms
public static java.util.List<java.lang.String> getTerms(java.lang.String expression)
-
skipEmpty
private static int skipEmpty(java.util.List<java.lang.String> elements, int start)
-
checkOuterSyntax
private static int checkOuterSyntax(java.util.List<java.lang.String> elements, int start)
-
checkInnerSyntax
private static int checkInnerSyntax(java.util.List<java.lang.String> elements, int start)
-
-