in appactive-java-client/client-rule/src/main/java/io/appactive/rule/traffic/condition/impl/BetweenConditionImpl.java [61:82]
public void init(int conditionIndex, String routeTokenName, List<String> valueList) {
this.priority = conditionIndex;
this.tokenName = routeTokenName;
AssertUtil.assertGreatZero("BetweenCondition.priority", this.priority);
AssertUtil.assertNotBlank("BetweenCondition.tokenName", this.tokenName);
List<NumTokenRange> rangeList = new ArrayList<>();
for (String rangeValue : valueList) {
Matcher m = RANGE_PATTER.matcher(rangeValue);
if (m.matches()) {
NumTokenRange range = new NumTokenRange(Long.valueOf(m.group(1)), Long.valueOf(m.group(2)));
rangeList.add(range);
continue;
}
throw ExceptionFactory.makeFault("between:TokenRange is invalid, should be format like 123~456 ");
}
this.rangeList = rangeList;
// 至少应该有一个Range条件范围
AssertUtil.assertGreatZero("BetweenCondition.rangeList.size()", this.rangeList.size());
}