You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@unomi.apache.org by sh...@apache.org on 2016/11/25 13:26:34 UTC
[5/6] incubator-unomi git commit: Merge branch 'master' into
feature-UNOMI-28-ES2X
Merge branch 'master' into feature-UNOMI-28-ES2X
# Conflicts:
# plugins/baseplugin/src/main/java/org/apache/unomi/plugins/baseplugin/conditions/PropertyConditionESQueryBuilder.java
Project: http://git-wip-us.apache.org/repos/asf/incubator-unomi/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-unomi/commit/2524693c
Tree: http://git-wip-us.apache.org/repos/asf/incubator-unomi/tree/2524693c
Diff: http://git-wip-us.apache.org/repos/asf/incubator-unomi/diff/2524693c
Branch: refs/heads/feature-UNOMI-28-ES2X
Commit: 2524693c34beffddece4ee1b520e48aafe9552e0
Parents: 85f00e8 173c1eb
Author: Serge Huber <sh...@apache.org>
Authored: Fri Nov 25 14:16:13 2016 +0100
Committer: Serge Huber <sh...@apache.org>
Committed: Fri Nov 25 14:16:13 2016 +0100
----------------------------------------------------------------------
.../unomi/privacy/internal/PrivacyServiceImpl.java | 2 +-
.../apache/unomi/itests/ConditionEvaluatorTest.java | 2 +-
.../conditions/PropertyConditionESQueryBuilder.java | 14 ++++++++++++++
.../conditions/PropertyConditionEvaluator.java | 12 +++++++++++-
4 files changed, 27 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-unomi/blob/2524693c/plugins/baseplugin/src/main/java/org/apache/unomi/plugins/baseplugin/conditions/PropertyConditionESQueryBuilder.java
----------------------------------------------------------------------
diff --cc plugins/baseplugin/src/main/java/org/apache/unomi/plugins/baseplugin/conditions/PropertyConditionESQueryBuilder.java
index 23f1df8,d2f77c0..cf58734
--- a/plugins/baseplugin/src/main/java/org/apache/unomi/plugins/baseplugin/conditions/PropertyConditionESQueryBuilder.java
+++ b/plugins/baseplugin/src/main/java/org/apache/unomi/plugins/baseplugin/conditions/PropertyConditionESQueryBuilder.java
@@@ -61,54 -60,56 +61,68 @@@ public class PropertyConditionESQueryBu
switch (op) {
case "equals":
checkRequiredValue(value, name, op, false);
- return FilterBuilders.termFilter(name, value);
+ return QueryBuilders.termQuery(name, value);
case "notEquals":
checkRequiredValue(value, name, op, false);
- return FilterBuilders.notFilter(FilterBuilders.termFilter(name, value));
+ return QueryBuilders.boolQuery().mustNot(QueryBuilders.termQuery(name, value));
case "greaterThan":
checkRequiredValue(value, name, op, false);
- return FilterBuilders.rangeFilter(name).gt(value);
+ return QueryBuilders.rangeQuery(name).gt(value);
case "greaterThanOrEqualTo":
checkRequiredValue(value, name, op, false);
- return FilterBuilders.rangeFilter(name).gte(value);
+ return QueryBuilders.rangeQuery(name).gte(value);
case "lessThan":
checkRequiredValue(value, name, op, false);
- return FilterBuilders.rangeFilter(name).lt(value);
+ return QueryBuilders.rangeQuery(name).lt(value);
case "lessThanOrEqualTo":
checkRequiredValue(value, name, op, false);
- return FilterBuilders.rangeFilter(name).lte(value);
+ return QueryBuilders.rangeQuery(name).lte(value);
case "between":
checkRequiredValuesSize(values, name, op, 2);
- return FilterBuilders.rangeFilter(name).gte(values.get(0)).lte(values.get(1));
+ return QueryBuilders.rangeQuery(name).gte(values.get(0)).lte(values.get(1));
case "exists":
- return FilterBuilders.existsFilter(name);
+ return QueryBuilders.existsQuery(name);
case "missing":
- return FilterBuilders.missingFilter(name);
+ return QueryBuilders.boolQuery().mustNot(QueryBuilders.existsQuery((name)));
case "contains":
checkRequiredValue(expectedValue, name, op, false);
- return FilterBuilders.regexpFilter(name, ".*" + expectedValue + ".*");
+ return QueryBuilders.regexpQuery(name, ".*" + expectedValue + ".*");
case "startsWith":
checkRequiredValue(expectedValue, name, op, false);
- return FilterBuilders.prefixFilter(name, expectedValue);
+ return QueryBuilders.prefixQuery(name, expectedValue);
case "endsWith":
checkRequiredValue(expectedValue, name, op, false);
- return FilterBuilders.regexpFilter(name, ".*" + expectedValue);
+ return QueryBuilders.regexpQuery(name, ".*" + expectedValue);
case "matchesRegex":
checkRequiredValue(expectedValue, name, op, false);
- return FilterBuilders.regexpFilter(name, expectedValue);
+ return QueryBuilders.regexpQuery(name, expectedValue);
case "in":
checkRequiredValue(values, name, op, true);
- return FilterBuilders.inFilter(name, values.toArray());
+ return QueryBuilders.termsQuery(name, values.toArray());
case "notIn":
checkRequiredValue(values, name, op, true);
- return FilterBuilders.notFilter(FilterBuilders.inFilter(name, values.toArray()));
+ return QueryBuilders.boolQuery().mustNot(QueryBuilders.termsQuery(name, values.toArray()));
case "all":
checkRequiredValue(values, name, op, true);
- return FilterBuilders.termsFilter(name, values.toArray()).execution("and");
+ BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery();
+ for (Object curValue : values) {
+ boolQueryBuilder.must(QueryBuilders.termQuery(name, curValue));
+ }
+ return boolQueryBuilder;
+ case "hasSomeOf":
+ checkRequiredValue(values, name, op, true);
- return FilterBuilders.termsFilter(name, values.toArray()).execution("or");
++ BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery();
++ for (Object curValue : values) {
++ boolQueryBuilder.should(QueryBuilders.termQuery(name, curValue));
++ }
++ return boolQueryBuilder;
+ case "hasNoneOf":
+ checkRequiredValue(values, name, op, true);
- return FilterBuilders.notFilter(FilterBuilders.termsFilter(name, values.toArray()).execution("or"));
++ BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery();
++ for (Object curValue : values) {
++ boolQueryBuilder.mustNot(QueryBuilders.termQuery(name, curValue));
++ }
++ return boolQueryBuilder;
case "isDay":
checkRequiredValue(value, name, op, false);
return getIsSameDayRange(value, name);
http://git-wip-us.apache.org/repos/asf/incubator-unomi/blob/2524693c/plugins/baseplugin/src/main/java/org/apache/unomi/plugins/baseplugin/conditions/PropertyConditionEvaluator.java
----------------------------------------------------------------------