From faaf8ba330fd54b8786761333e516c57c2cc6037 Mon Sep 17 00:00:00 2001 From: Zhangmei Li Date: Sat, 18 Aug 2018 19:08:21 +0800 Subject: [PATCH] Check the predicate of HasContainer can't be null fix #15 Change-Id: I2faf8bf5182987e77a946a2809cd050f69e1cef1 --- .../hugegraph/traversal/optimize/TraversalUtil.java | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/hugegraph-core/src/main/java/com/baidu/hugegraph/traversal/optimize/TraversalUtil.java b/hugegraph-core/src/main/java/com/baidu/hugegraph/traversal/optimize/TraversalUtil.java index 0e08f75c50..f2c7b05f7a 100644 --- a/hugegraph-core/src/main/java/com/baidu/hugegraph/traversal/optimize/TraversalUtil.java +++ b/hugegraph-core/src/main/java/com/baidu/hugegraph/traversal/optimize/TraversalUtil.java @@ -188,7 +188,9 @@ public static ConditionQuery fillConditionQuery( public static Condition convHas2Condition(HasContainer has, HugeType type, HugeGraph graph) { - BiPredicate bp = has.getPredicate().getBiPredicate(); + P p = has.getPredicate(); + E.checkArgument(p != null, "The predicate of has(%s) is null", has); + BiPredicate bp = p.getBiPredicate(); Condition condition; if (keyForContainsKeyOrValue(has.getKey())) { condition = convContains2Relation(graph, has); @@ -198,13 +200,13 @@ public static Condition convHas2Condition(HasContainer has, condition = convRelationType2Relation(graph, type, has); } else if (bp instanceof Contains) { condition = convIn2Relation(graph, has); - } else if (has.getPredicate() instanceof AndP) { + } else if (p instanceof AndP) { condition = convAnd(graph, type, has); - } else if (has.getPredicate() instanceof OrP) { + } else if (p instanceof OrP) { condition = convOr(graph, type, has); } else { // TODO: deal with other Predicate - throw newUnsupportedPredicate(has.getPredicate()); + throw newUnsupportedPredicate(p); } return condition; }