|
19 | 19 | import io.split.engine.matchers.GreaterThanOrEqualToMatcher; |
20 | 20 | import io.split.engine.matchers.LessThanOrEqualToMatcher; |
21 | 21 | import io.split.engine.matchers.UserDefinedSegmentMatcher; |
| 22 | +import io.split.engine.matchers.EqualToSemverMatcher; |
22 | 23 | import io.split.engine.matchers.collections.ContainsAllOfSetMatcher; |
23 | 24 | import io.split.engine.matchers.collections.ContainsAnyOfSetMatcher; |
24 | 25 | import io.split.engine.matchers.collections.EqualToSetMatcher; |
|
28 | 29 | import io.split.engine.matchers.strings.RegularExpressionMatcher; |
29 | 30 | import io.split.engine.matchers.strings.StartsWithAnyOfMatcher; |
30 | 31 | import io.split.engine.matchers.strings.WhitelistMatcher; |
| 32 | +import io.split.engine.matchers.GreaterThanOrEqualToSemverMatcher; |
| 33 | +import io.split.engine.matchers.LessThanOrEqualToSemverMatcher; |
| 34 | +import io.split.engine.matchers.InListSemverMatcher; |
| 35 | +import io.split.engine.matchers.BetweenSemverMatcher; |
| 36 | + |
31 | 37 | import org.slf4j.Logger; |
32 | 38 | import org.slf4j.LoggerFactory; |
33 | 39 |
|
@@ -193,6 +199,26 @@ private AttributeMatcher toMatcher(Matcher matcher) { |
193 | 199 | + ". matcher.booleanMatcherData() MUST NOT BE null"); |
194 | 200 | delegate = new BooleanMatcher(matcher.booleanMatcherData); |
195 | 201 | break; |
| 202 | + case EQUAL_TO_SEMVER: |
| 203 | + checkNotNull(matcher.stringMatcherData, "stringMatcherData is required for EQUAL_TO_SEMVER matcher type"); |
| 204 | + delegate = new EqualToSemverMatcher(matcher.stringMatcherData); |
| 205 | + break; |
| 206 | + case GREATER_THAN_OR_EQUAL_TO_SEMVER: |
| 207 | + checkNotNull(matcher.stringMatcherData, "stringMatcherData is required for GREATER_THAN_OR_EQUAL_TO_SEMVER matcher type"); |
| 208 | + delegate = new GreaterThanOrEqualToSemverMatcher(matcher.stringMatcherData); |
| 209 | + break; |
| 210 | + case LESS_THAN_OR_EQUAL_TO_SEMVER: |
| 211 | + checkNotNull(matcher.stringMatcherData, "stringMatcherData is required for LESS_THAN_OR_EQUAL_SEMVER matcher type"); |
| 212 | + delegate = new LessThanOrEqualToSemverMatcher(matcher.stringMatcherData); |
| 213 | + break; |
| 214 | + case IN_LIST_SEMVER: |
| 215 | + checkNotNull(matcher.whitelistMatcherData, "whitelistMatcherData is required for IN_LIST_SEMVER matcher type"); |
| 216 | + delegate = new InListSemverMatcher(matcher.whitelistMatcherData.whitelist); |
| 217 | + break; |
| 218 | + case BETWEEN_SEMVER: |
| 219 | + checkNotNull(matcher.betweenStringMatcherData, "betweenStringMatcherData is required for BETWEEN_SEMVER matcher type"); |
| 220 | + delegate = new BetweenSemverMatcher(matcher.betweenStringMatcherData.start, matcher.betweenStringMatcherData.end); |
| 221 | + break; |
196 | 222 | default: |
197 | 223 | throw new IllegalArgumentException("Unknown matcher type: " + matcher.matcherType); |
198 | 224 | } |
|
0 commit comments