You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tinkerpop.apache.org by ok...@apache.org on 2015/05/15 20:24:56 UTC
incubator-tinkerpop git commit: TraversalBiPredicate clone is smart
about negation.
Repository: incubator-tinkerpop
Updated Branches:
refs/heads/master b039963a8 -> 36d93c920
TraversalBiPredicate clone is smart about negation.
Project: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/commit/36d93c92
Tree: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/tree/36d93c92
Diff: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/diff/36d93c92
Branch: refs/heads/master
Commit: 36d93c920d78170574e426b9fe7edeb6143b273e
Parents: b039963
Author: Marko A. Rodriguez <ok...@gmail.com>
Authored: Fri May 15 12:24:53 2015 -0600
Committer: Marko A. Rodriguez <ok...@gmail.com>
Committed: Fri May 15 12:24:53 2015 -0600
----------------------------------------------------------------------
.../process/traversal/lambda/TraversalBiPredicate.java | 4 ++++
.../process/traversal/step/filter/WhereStep.java | 4 +++-
.../process/traversal/step/filter/WhereTest.java | 12 ++++++++----
3 files changed, 15 insertions(+), 5 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/36d93c92/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/lambda/TraversalBiPredicate.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/lambda/TraversalBiPredicate.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/lambda/TraversalBiPredicate.java
index 4fba800..ec4cca5 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/lambda/TraversalBiPredicate.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/lambda/TraversalBiPredicate.java
@@ -61,6 +61,10 @@ public class TraversalBiPredicate<S, E> implements BiPredicate<S, E> {
return new TraversalBiPredicate<>(this.traversal.clone(), !this.negate);
}
+ public boolean isNegated() {
+ return this.negate;
+ }
+
@Override
public TraversalBiPredicate<S, E> clone() {
try {
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/36d93c92/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/WhereStep.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/WhereStep.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/WhereStep.java
index 532050a..3b545f3 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/WhereStep.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/WhereStep.java
@@ -103,7 +103,9 @@ public final class WhereStep<S> extends FilterStep<S> implements TraversalParent
public WhereStep<S> clone() {
final WhereStep<S> clone = (WhereStep<S>) super.clone();
if (this.predicate.getBiPredicate() instanceof TraversalBiPredicate)
- clone.predicate = P.traversal(((TraversalBiPredicate) this.predicate.getBiPredicate()).getTraversal().clone());
+ clone.predicate = ((TraversalBiPredicate) this.predicate.getBiPredicate()).isNegated() ?
+ P.not(((TraversalBiPredicate) this.predicate.getBiPredicate()).getTraversal().clone()) :
+ P.traversal(((TraversalBiPredicate) this.predicate.getBiPredicate()).getTraversal().clone());
return clone;
}
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/36d93c92/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/WhereTest.java
----------------------------------------------------------------------
diff --git a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/WhereTest.java b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/WhereTest.java
index 7e4cd9d..d3c612c 100644
--- a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/WhereTest.java
+++ b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/WhereTest.java
@@ -30,7 +30,11 @@ import org.apache.tinkerpop.gremlin.structure.Vertex;
import org.junit.Test;
import org.junit.runner.RunWith;
-import java.util.*;
+import java.util.Arrays;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
import static org.apache.tinkerpop.gremlin.LoadGraphWith.GraphData.MODERN;
import static org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.__.as;
@@ -228,7 +232,7 @@ public abstract class WhereTest extends AbstractGremlinProcessTest {
@Test
@LoadGraphWith(MODERN)
- public void get_g_VX1X_repeatXbothEXcreatedX_whereXwithoutXeXX_aggregateXeX_otherVX_emit_path() {
+ public void g_VX1X_repeatXbothEXcreatedX_whereXwithoutXeXX_aggregateXeX_otherVX_emit_path() {
final Traversal<Vertex, Path> traversal = get_g_VX1X_repeatXbothEXcreatedX_whereXwithoutXeXX_aggregateXeX_otherVX_emit_path(convertToVertexId("marko"));
printTraversalForm(traversal);
final List<Path> paths = traversal.toList();
@@ -239,9 +243,9 @@ public abstract class WhereTest extends AbstractGremlinProcessTest {
assertFalse(traversal.hasNext());
}
- @Test
+ @Test
@LoadGraphWith(MODERN)
- public void g_V_hasNotXoutXcreatedXX() {
+ public void g_V_whereXnotXoutXcreatedXXX_name() {
final Traversal<Vertex, String> traversal = get_g_V_whereXnotXoutXcreatedXXX_name();
checkResults(Arrays.asList("vadas", "lop", "ripple"), traversal);
}