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/04/24 22:49:32 UTC
[1/8] incubator-tinkerpop git commit: g.V.has('age', gt(30)),
g.V.has('age', inside(20, 30), g.V.count.is(gt(30)). #comment TINKERPOP3-626
Repository: incubator-tinkerpop
Updated Branches:
refs/heads/master 594dc82d3 -> aebc644cd
g.V.has('age',gt(30)), g.V.has('age',inside(20,30), g.V.count.is(gt(30)). #comment TINKERPOP3-626
Project: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/commit/5ae2fd5c
Tree: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/tree/5ae2fd5c
Diff: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/diff/5ae2fd5c
Branch: refs/heads/master
Commit: 5ae2fd5cbc24498f279dcd7206e68008b5c1a5c2
Parents: 1ea7692
Author: Marko A. Rodriguez <ok...@gmail.com>
Authored: Fri Apr 24 13:40:17 2015 -0600
Committer: Marko A. Rodriguez <ok...@gmail.com>
Committed: Fri Apr 24 13:40:17 2015 -0600
----------------------------------------------------------------------
.../traversal/dsl/graph/GraphTraversal.java | 50 ++++-----
.../gremlin/process/traversal/dsl/graph/__.java | 25 +++--
.../process/traversal/step/filter/IsStep.java | 24 ++---
.../optimization/RangeByIsCountStrategy.java | 4 +-
.../apache/tinkerpop/gremlin/structure/P.java | 108 +++++++++++++++++++
.../step/filter/ConjunctionStepTest.java | 6 +-
.../RangeByIsCountStrategyTest.java | 3 +-
.../ser/GryoMessageSerializerV1D0Test.java | 2 +-
.../JsonMessageSerializerGremlinV1d0Test.java | 2 +-
.../ser/JsonMessageSerializerV1d0Test.java | 3 +-
.../traversal/step/filter/GroovyAndTest.groovy | 11 +-
.../traversal/step/filter/GroovyHasTest.groovy | 14 +--
.../traversal/step/filter/GroovyIsTest.groovy | 14 +--
.../traversal/step/filter/GroovyOrTest.groovy | 16 +--
.../traversal/step/map/GroovyVertexTest.groovy | 6 +-
.../engine/GremlinExecutorPerformanceTest.java | 4 +-
.../GremlinGroovyScriptEngineOverGraphTest.java | 6 +-
.../gremlin/groovy/loaders/SugarLoader.groovy | 2 -
.../AbstractImportCustomizerProvider.java | 7 +-
.../process/traversal/CoreTraversalTest.java | 2 +-
.../process/traversal/step/filter/AndTest.java | 15 ++-
.../process/traversal/step/filter/HasTest.java | 11 +-
.../process/traversal/step/filter/IsTest.java | 7 +-
.../process/traversal/step/filter/OrTest.java | 12 +--
.../process/traversal/step/map/VertexTest.java | 3 +-
.../decoration/EventStrategyProcessTest.java | 13 ++-
.../tinkerpop/gremlin/structure/IoTest.java | 6 +-
.../gremlin/structure/VertexPropertyTest.java | 2 +-
.../tinkergraph/structure/TinkerGraphTest.java | 48 +++++----
29 files changed, 265 insertions(+), 161 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/5ae2fd5c/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/graph/GraphTraversal.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/graph/GraphTraversal.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/graph/GraphTraversal.java
index 35b3874..7547faf 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/graph/GraphTraversal.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/graph/GraphTraversal.java
@@ -21,7 +21,6 @@ package org.apache.tinkerpop.gremlin.process.traversal.dsl.graph;
import org.apache.tinkerpop.gremlin.process.traversal.Path;
import org.apache.tinkerpop.gremlin.process.traversal.Scope;
import org.apache.tinkerpop.gremlin.process.traversal.Step;
-import org.apache.tinkerpop.gremlin.structure.T;
import org.apache.tinkerpop.gremlin.process.traversal.Traversal;
import org.apache.tinkerpop.gremlin.process.traversal.Traverser;
import org.apache.tinkerpop.gremlin.process.traversal.lambda.ElementValueTraversal;
@@ -117,36 +116,33 @@ import org.apache.tinkerpop.gremlin.process.traversal.step.util.ElementFunctionC
import org.apache.tinkerpop.gremlin.process.traversal.step.util.ElementValueComparator;
import org.apache.tinkerpop.gremlin.process.traversal.step.util.HasContainer;
import org.apache.tinkerpop.gremlin.process.traversal.step.util.NoOpBarrierStep;
-import org.apache.tinkerpop.gremlin.process.traversal.step.util.PathIdentityStep;
import org.apache.tinkerpop.gremlin.process.traversal.step.util.TraversalComparator;
import org.apache.tinkerpop.gremlin.process.traversal.step.util.Tree;
-import org.apache.tinkerpop.gremlin.structure.Compare;
-import org.apache.tinkerpop.gremlin.structure.Contains;
import org.apache.tinkerpop.gremlin.structure.Direction;
import org.apache.tinkerpop.gremlin.structure.Edge;
import org.apache.tinkerpop.gremlin.structure.Element;
import org.apache.tinkerpop.gremlin.structure.Order;
+import org.apache.tinkerpop.gremlin.structure.P;
import org.apache.tinkerpop.gremlin.structure.Property;
import org.apache.tinkerpop.gremlin.structure.PropertyType;
+import org.apache.tinkerpop.gremlin.structure.T;
import org.apache.tinkerpop.gremlin.structure.Vertex;
import org.apache.tinkerpop.gremlin.structure.VertexProperty;
import org.apache.tinkerpop.gremlin.util.function.ConstantSupplier;
import java.util.Arrays;
import java.util.Collection;
+import java.util.Collections;
import java.util.Comparator;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
-import java.util.Optional;
import java.util.function.BiFunction;
import java.util.function.BiPredicate;
import java.util.function.BinaryOperator;
import java.util.function.Consumer;
import java.util.function.Function;
import java.util.function.Predicate;
-import java.util.function.Supplier;
-import java.util.function.UnaryOperator;
/**
* @author Marko A. Rodriguez (http://markorodriguez.com)
@@ -471,60 +467,60 @@ public interface GraphTraversal<S, E> extends Traversal<S, E> {
return this.asAdmin().addStep(new HasTraversalStep<>(this.asAdmin(), (Traversal.Admin<E, ?>) hasNotNextTraversal, true));
}
+ public default GraphTraversal<S, E> has(final String key, final P<?> predicate) {
+ return this.asAdmin().addStep(new HasStep(this.asAdmin(), new HasContainer(key, predicate.getBiPredicate(), predicate.getValue())));
+ }
+
public default GraphTraversal<S, E> has(final String key) {
- return this.asAdmin().addStep(new HasStep(this.asAdmin(), new HasContainer(key, Contains.within)));
+ return this.has(key, P.within());
}
public default GraphTraversal<S, E> has(final String key, final Object value) {
- return this.has(key, Compare.eq, value);
+ return this.has(key, P.eq(value));
}
public default GraphTraversal<S, E> has(final T accessor, final Object value) {
return this.has(accessor.getAccessor(), value);
}
- public default GraphTraversal<S, E> has(final String key, final BiPredicate predicate, final Object value) {
- return this.asAdmin().addStep(new HasStep(this.asAdmin(), new HasContainer(key, predicate, value)));
- }
-
- public default GraphTraversal<S, E> has(final T accessor, final BiPredicate predicate, final Object value) {
- return this.has(accessor.getAccessor(), predicate, value);
+ public default GraphTraversal<S, E> has(final T accessor, final P<?> predicate) {
+ return this.has(accessor.getAccessor(), predicate);
}
public default GraphTraversal<S, E> has(final String label, final String key, final Object value) {
- return this.has(label, key, Compare.eq, value);
+ return this.has(label, key, P.eq(value));
}
- public default GraphTraversal<S, E> has(final String label, final String key, final BiPredicate predicate, final Object value) {
- return this.has(T.label, label).has(key, predicate, value);
+ public default GraphTraversal<S, E> has(final String label, final String key, final P<?> predicate) {
+ return this.has(T.label, label).has(key, predicate);
}
public default GraphTraversal<S, E> hasNot(final String key) {
- return this.asAdmin().addStep(new HasStep(this.asAdmin(), new HasContainer(key, Contains.without)));
+ return this.has(key, P.without());
}
public default GraphTraversal<S, E> hasLabel(final String... labels) {
- return labels.length == 1 ? this.has(T.label, labels[0]) : this.has(T.label, Contains.within, Arrays.asList(labels));
+ return labels.length == 1 ? this.has(T.label, labels[0]) : this.has(T.label.getAccessor(), P.within(labels));
}
public default GraphTraversal<S, E> hasId(final Object... ids) {
- return ids.length == 1 ? this.has(T.id, ids[0]) : this.has(T.id, Contains.within, Arrays.asList(ids));
+ return ids.length == 1 ? this.has(T.id, ids[0]) : this.has(T.id.getAccessor(), P.within(ids));
}
public default GraphTraversal<S, E> hasKey(final String... keys) {
- return keys.length == 1 ? this.has(T.key, keys[0]) : this.has(T.key, Contains.within, Arrays.asList(keys));
+ return keys.length == 1 ? this.has(T.key, keys[0]) : this.has(T.key.getAccessor(), P.within(keys));
}
public default GraphTraversal<S, E> hasValue(final Object... values) {
- return values.length == 1 ? this.has(T.value, values[0]) : this.has(T.value, Contains.within, Arrays.asList(values));
+ return values.length == 1 ? this.has(T.value, values[0]) : this.has(T.value.getAccessor(), P.within(values));
}
- public default GraphTraversal<S, E> is(final Object value) {
- return this.is(Compare.eq, value);
+ public default GraphTraversal<S, E> is(final P<E> predicate) {
+ return this.asAdmin().addStep(new IsStep<>(this.asAdmin(), predicate));
}
- public default GraphTraversal<S, E> is(final BiPredicate predicate, final Object value) {
- return this.asAdmin().addStep(new IsStep(this.asAdmin(), predicate, value));
+ public default GraphTraversal<S, E> is(final Object value) {
+ return this.is((P<E>)P.eq(value));
}
public default GraphTraversal<S, E> coin(final double probability) {
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/5ae2fd5c/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/graph/__.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/graph/__.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/graph/__.java
index a6345d8..f13b313 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/graph/__.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/graph/__.java
@@ -20,13 +20,14 @@ package org.apache.tinkerpop.gremlin.process.traversal.dsl.graph;
import org.apache.tinkerpop.gremlin.process.traversal.Path;
import org.apache.tinkerpop.gremlin.process.traversal.Scope;
-import org.apache.tinkerpop.gremlin.structure.T;
import org.apache.tinkerpop.gremlin.process.traversal.Traversal;
import org.apache.tinkerpop.gremlin.process.traversal.Traverser;
import org.apache.tinkerpop.gremlin.process.traversal.step.util.Tree;
import org.apache.tinkerpop.gremlin.structure.Direction;
import org.apache.tinkerpop.gremlin.structure.Edge;
+import org.apache.tinkerpop.gremlin.structure.P;
import org.apache.tinkerpop.gremlin.structure.Property;
+import org.apache.tinkerpop.gremlin.structure.T;
import org.apache.tinkerpop.gremlin.structure.Vertex;
import org.apache.tinkerpop.gremlin.structure.VertexProperty;
import org.apache.tinkerpop.gremlin.structure.util.empty.EmptyGraph;
@@ -41,8 +42,6 @@ import java.util.function.BinaryOperator;
import java.util.function.Consumer;
import java.util.function.Function;
import java.util.function.Predicate;
-import java.util.function.Supplier;
-import java.util.function.UnaryOperator;
/**
* @author Marko A. Rodriguez (http://markorodriguez.com)
@@ -331,20 +330,20 @@ public class __ {
return __.<A>start().has(accessor, value);
}
- public static <A> GraphTraversal<A, A> has(final String key, final BiPredicate predicate, final Object value) {
- return __.<A>start().has(key, predicate, value);
+ public static <A> GraphTraversal<A, A> has(final String key, final P<?> predicate) {
+ return __.<A>start().has(key, predicate);
}
- public static <A> GraphTraversal<A, A> has(final T accessor, final BiPredicate predicate, final Object value) {
- return __.<A>start().has(accessor, predicate, value);
+ public static <A> GraphTraversal<A, A> has(final T accessor, final P<?> predicate) {
+ return __.<A>start().has(accessor, predicate);
}
public static <A> GraphTraversal<A, A> has(final String label, final String key, final Object value) {
return __.<A>start().has(label, key, value);
}
- public static <A> GraphTraversal<A, A> has(final String label, final String key, final BiPredicate predicate, final Object value) {
- return __.<A>start().has(label, key, predicate, value);
+ public static <A> GraphTraversal<A, A> has(final String label, final String key, final P<?> predicate) {
+ return __.<A>start().has(label, key, predicate);
}
public static <A> GraphTraversal<A, A> hasNot(final String key) {
@@ -379,12 +378,12 @@ public class __ {
return __.<A>start().where(constraint);
}
- public static <A> GraphTraversal<A, A> is(final Object value) {
- return __.<A>start().is(value);
+ public static <A> GraphTraversal<A, A> is(final P<A> predicate) {
+ return __.<A>start().is(predicate);
}
- public static <A> GraphTraversal<A, A> is(final BiPredicate predicate, final Object value) {
- return __.<A>start().is(predicate, value);
+ public static <A> GraphTraversal<A, A> is(final Object value) {
+ return __.<A>start().is(value);
}
public static <A> GraphTraversal<A, A> coin(final double probability) {
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/5ae2fd5c/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/IsStep.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/IsStep.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/IsStep.java
index 0f33178..4f7da24 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/IsStep.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/IsStep.java
@@ -20,35 +20,33 @@ package org.apache.tinkerpop.gremlin.process.traversal.step.filter;
import org.apache.tinkerpop.gremlin.process.traversal.Traversal;
import org.apache.tinkerpop.gremlin.process.traversal.Traverser;
-import org.apache.tinkerpop.gremlin.process.traversal.util.TraversalHelper;
import org.apache.tinkerpop.gremlin.process.traversal.traverser.TraverserRequirement;
+import org.apache.tinkerpop.gremlin.process.traversal.util.TraversalHelper;
+import org.apache.tinkerpop.gremlin.structure.P;
import java.util.Collections;
import java.util.Set;
-import java.util.function.BiPredicate;
/**
* @author Daniel Kuppitz (http://gremlin.guru)
*/
public final class IsStep<S> extends FilterStep<S> {
- private final Object value;
- private final BiPredicate<S, Object> biPredicate;
+ private final P<S> predicate;
- public IsStep(final Traversal.Admin traversal, final BiPredicate<S, Object> biPredicate, final Object value) {
+ public IsStep(final Traversal.Admin traversal, final P<S> predicate) {
super(traversal);
- this.value = value;
- this.biPredicate = biPredicate;
+ this.predicate = predicate;
}
@Override
protected boolean filter(final Traverser.Admin<S> traverser) {
- return this.biPredicate.test(traverser.get(), this.value);
+ return this.predicate.test(traverser.get());
}
@Override
public String toString() {
- return TraversalHelper.makeStepString(this, this.biPredicate, this.value);
+ return TraversalHelper.makeStepString(this, this.predicate);
}
@Override
@@ -56,11 +54,7 @@ public final class IsStep<S> extends FilterStep<S> {
return Collections.singleton(TraverserRequirement.OBJECT);
}
- public Object getValue() {
- return value;
- }
-
- public BiPredicate<S, Object> getPredicate() {
- return biPredicate;
+ public P<S> getPredicate() {
+ return this.predicate;
}
}
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/5ae2fd5c/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/optimization/RangeByIsCountStrategy.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/optimization/RangeByIsCountStrategy.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/optimization/RangeByIsCountStrategy.java
index 9ef6826..fd37985 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/optimization/RangeByIsCountStrategy.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/optimization/RangeByIsCountStrategy.java
@@ -61,8 +61,8 @@ public final class RangeByIsCountStrategy extends AbstractTraversalStrategy impl
final Step next = traversal.getSteps().get(i + 1);
if (next instanceof IsStep && !(prev instanceof RangeGlobalStep)) { // if a RangeStep was provided, assume that the user knows what he's doing
final IsStep isStep = (IsStep) next;
- final Object value = isStep.getValue();
- final BiPredicate predicate = isStep.getPredicate();
+ final Object value = isStep.getPredicate().getValue();
+ final BiPredicate predicate = isStep.getPredicate().getBiPredicate();
if (value instanceof Number) {
final long highRangeOffset = INCREASED_OFFSET_SCALAR_PREDICATES.contains(predicate) ? 1L : 0L;
final long highRange = ((Number) value).longValue() + highRangeOffset;
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/5ae2fd5c/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/P.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/P.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/P.java
new file mode 100644
index 0000000..43fcd5a
--- /dev/null
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/P.java
@@ -0,0 +1,108 @@
+/*
+ *
+ * * Licensed to the Apache Software Foundation (ASF) under one
+ * * or more contributor license agreements. See the NOTICE file
+ * * distributed with this work for additional information
+ * * regarding copyright ownership. The ASF licenses this file
+ * * to you under the Apache License, Version 2.0 (the
+ * * "License"); you may not use this file except in compliance
+ * * with the License. You may obtain a copy of the License at
+ * *
+ * * http://www.apache.org/licenses/LICENSE-2.0
+ * *
+ * * Unless required by applicable law or agreed to in writing,
+ * * software distributed under the License is distributed on an
+ * * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * * KIND, either express or implied. See the License for the
+ * * specific language governing permissions and limitations
+ * * under the License.
+ *
+ */
+
+package org.apache.tinkerpop.gremlin.structure;
+
+import java.io.Serializable;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.function.BiPredicate;
+import java.util.function.Predicate;
+
+/**
+ * @author Marko A. Rodriguez (http://markorodriguez.com)
+ */
+public class P<V> implements Predicate<V>, Serializable {
+
+ private final BiPredicate<V, V> biPredicate;
+ private final V value;
+
+ public P(final BiPredicate<V, V> biPredicate, final V value) {
+ this.value = value;
+ this.biPredicate = biPredicate;
+ }
+
+ public BiPredicate<V, V> getBiPredicate() {
+ return this.biPredicate;
+ }
+
+ public V getValue() {
+ return this.value;
+ }
+
+ public boolean test(final V testValue) {
+ return this.biPredicate.test(testValue, this.value);
+ }
+
+ //////////////// statics
+
+ public static <V> P<V> eq(final V value) {
+ return new P(Compare.eq, value);
+ }
+
+ public static <V> P<V> neq(final V value) {
+ return new P(Compare.neq, value);
+ }
+
+ public static <V> P<V> lt(final V value) {
+ return new P(Compare.lt, value);
+ }
+
+ public static <V> P<V> lte(final V value) {
+ return new P(Compare.lte, value);
+ }
+
+ public static <V> P<V> gt(final V value) {
+ return new P(Compare.gt, value);
+ }
+
+ public static <V> P<V> gte(final V value) {
+ return new P(Compare.gte, value);
+ }
+
+ public static <V> P<V> inside(final V first, final V second) {
+ return new P(Compare.inside, Arrays.asList(first, second));
+ }
+
+ public static <V> P<V> outside(final V first, final V second) {
+ return new P(Compare.outside, Arrays.asList(first, second));
+ }
+
+ public static <V> P<V> within(final V... values) {
+ return new P(Contains.within, values.length == 0 ? null : Arrays.asList(values));
+ }
+
+ public static <V> P<V> within(final Collection<V> value) {
+ return new P(Contains.within, value);
+ }
+
+ public static <V> P<V> without(final V... values) {
+ return new P(Contains.without, values.length == 0 ? null : Arrays.asList(values));
+ }
+
+ public static <V> P<V> without(final Collection<V> value) {
+ return new P(Contains.without, value);
+ }
+
+ public static P test(final BiPredicate biPredicate, final Object value) {
+ return new P(biPredicate, value);
+ }
+}
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/5ae2fd5c/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/ConjunctionStepTest.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/ConjunctionStepTest.java b/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/ConjunctionStepTest.java
index d982e7f..ee3802c 100644
--- a/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/ConjunctionStepTest.java
+++ b/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/ConjunctionStepTest.java
@@ -20,8 +20,8 @@ package org.apache.tinkerpop.gremlin.process.traversal.step.filter;
import org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.GraphTraversal;
import org.apache.tinkerpop.gremlin.process.traversal.step.util.HasContainer;
-import org.apache.tinkerpop.gremlin.process.traversal.step.filter.ConjunctionStep;
import org.apache.tinkerpop.gremlin.structure.Compare;
+import org.apache.tinkerpop.gremlin.structure.P;
import org.junit.Test;
import java.util.Iterator;
@@ -36,7 +36,7 @@ public class ConjunctionStepTest {
@Test
public void shouldGetHasContainers() {
- final GraphTraversal.Admin<?, ?> traversal = and(has("name"), has("age", Compare.gt, 30).or(has("lang", "java"))).asAdmin();
+ final GraphTraversal.Admin<?, ?> traversal = and(has("name"), has("age", P.gt(30)).or(has("lang", "java"))).asAdmin();
assertTrue(((ConjunctionStep) traversal.getStartStep()).isConjunctionHasTree());
final ConjunctionStep.ConjunctionTree conjunctionTree = (((ConjunctionStep<?>) traversal.getStartStep()).getConjunctionHasTree());
final Iterator<ConjunctionStep.ConjunctionTree.Entry> iterator = conjunctionTree.iterator();
@@ -63,7 +63,7 @@ public class ConjunctionStepTest {
@Test
public void shouldNotGetHasContainers() {
- final GraphTraversal.Admin<?, ?> traversal = and(has("name"), has("age", Compare.gt, 30).or(has("lang", "java"), out().has("name","josh"))).asAdmin();
+ final GraphTraversal.Admin<?, ?> traversal = and(has("name"), has("age", P.gt(30)).or(has("lang", "java"), out().has("name", "josh"))).asAdmin();
assertFalse(((ConjunctionStep) traversal.getStartStep()).isConjunctionHasTree());
}
}
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/5ae2fd5c/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/optimization/RangeByIsCountStrategyTest.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/optimization/RangeByIsCountStrategyTest.java b/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/optimization/RangeByIsCountStrategyTest.java
index 8c29505..135e9da 100644
--- a/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/optimization/RangeByIsCountStrategyTest.java
+++ b/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/optimization/RangeByIsCountStrategyTest.java
@@ -29,6 +29,7 @@ import org.apache.tinkerpop.gremlin.process.traversal.util.DefaultTraversalStrat
import org.apache.tinkerpop.gremlin.process.traversal.util.TraversalHelper;
import org.apache.tinkerpop.gremlin.structure.Compare;
import org.apache.tinkerpop.gremlin.structure.Contains;
+import org.apache.tinkerpop.gremlin.structure.P;
import org.junit.Before;
import org.junit.Test;
import org.junit.experimental.runners.Enclosed;
@@ -154,7 +155,7 @@ public class RangeByIsCountStrategyTest {
public void doTest(final BiPredicate predicate, final Object value, final long expectedHighRange) {
final AtomicInteger counter = new AtomicInteger(0);
- final Traversal traversal = __.out().count().is(predicate, value);
+ final Traversal traversal = __.out().count().is(P.test(predicate,value));
applyRangeByIsCountStrategy(traversal);
final List<RangeGlobalStep> steps = TraversalHelper.getStepsOfClass(RangeGlobalStep.class, traversal.asAdmin());
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/5ae2fd5c/gremlin-driver/src/test/java/org/apache/tinkerpop/gremlin/driver/ser/GryoMessageSerializerV1D0Test.java
----------------------------------------------------------------------
diff --git a/gremlin-driver/src/test/java/org/apache/tinkerpop/gremlin/driver/ser/GryoMessageSerializerV1D0Test.java b/gremlin-driver/src/test/java/org/apache/tinkerpop/gremlin/driver/ser/GryoMessageSerializerV1D0Test.java
index 20bc308..6093648 100644
--- a/gremlin-driver/src/test/java/org/apache/tinkerpop/gremlin/driver/ser/GryoMessageSerializerV1D0Test.java
+++ b/gremlin-driver/src/test/java/org/apache/tinkerpop/gremlin/driver/ser/GryoMessageSerializerV1D0Test.java
@@ -229,7 +229,7 @@ public class GryoMessageSerializerV1D0Test {
final TinkerGraph graph = TinkerFactory.createClassic();
final GraphTraversalSource g = graph.traversal();
final Map<Vertex, Integer> map = new HashMap<>();
- map.put(g.V().has("name", Compare.eq, "marko").next(), 1000);
+ map.put(g.V().has("name", "marko").next(), 1000);
final ResponseMessage response = convertBinary(map);
assertCommon(response);
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/5ae2fd5c/gremlin-driver/src/test/java/org/apache/tinkerpop/gremlin/driver/ser/JsonMessageSerializerGremlinV1d0Test.java
----------------------------------------------------------------------
diff --git a/gremlin-driver/src/test/java/org/apache/tinkerpop/gremlin/driver/ser/JsonMessageSerializerGremlinV1d0Test.java b/gremlin-driver/src/test/java/org/apache/tinkerpop/gremlin/driver/ser/JsonMessageSerializerGremlinV1d0Test.java
index adf42be..afc3db2 100644
--- a/gremlin-driver/src/test/java/org/apache/tinkerpop/gremlin/driver/ser/JsonMessageSerializerGremlinV1d0Test.java
+++ b/gremlin-driver/src/test/java/org/apache/tinkerpop/gremlin/driver/ser/JsonMessageSerializerGremlinV1d0Test.java
@@ -206,7 +206,7 @@ public class JsonMessageSerializerGremlinV1d0Test {
final TinkerGraph graph = TinkerFactory.createClassic();
final GraphTraversalSource g = graph.traversal();
final Map<Vertex, Integer> map = new HashMap<>();
- map.put(g.V().has("name", Compare.eq, "marko").next(), 1000);
+ map.put(g.V().has("name", "marko").next(), 1000);
final ResponseMessage response = convert(map);
assertCommon(response);
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/5ae2fd5c/gremlin-driver/src/test/java/org/apache/tinkerpop/gremlin/driver/ser/JsonMessageSerializerV1d0Test.java
----------------------------------------------------------------------
diff --git a/gremlin-driver/src/test/java/org/apache/tinkerpop/gremlin/driver/ser/JsonMessageSerializerV1d0Test.java b/gremlin-driver/src/test/java/org/apache/tinkerpop/gremlin/driver/ser/JsonMessageSerializerV1d0Test.java
index c29d892..782e2fc 100644
--- a/gremlin-driver/src/test/java/org/apache/tinkerpop/gremlin/driver/ser/JsonMessageSerializerV1d0Test.java
+++ b/gremlin-driver/src/test/java/org/apache/tinkerpop/gremlin/driver/ser/JsonMessageSerializerV1d0Test.java
@@ -22,7 +22,6 @@ import org.apache.tinkerpop.gremlin.driver.message.RequestMessage;
import org.apache.tinkerpop.gremlin.driver.message.ResponseMessage;
import org.apache.tinkerpop.gremlin.driver.message.ResponseStatusCode;
import org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.GraphTraversalSource;
-import org.apache.tinkerpop.gremlin.structure.Compare;
import org.apache.tinkerpop.gremlin.structure.Edge;
import org.apache.tinkerpop.gremlin.structure.Graph;
import org.apache.tinkerpop.gremlin.structure.Property;
@@ -264,7 +263,7 @@ public class JsonMessageSerializerV1d0Test {
final TinkerGraph graph = TinkerFactory.createClassic();
final GraphTraversalSource g = graph.traversal();
final Map<Vertex, Integer> map = new HashMap<>();
- map.put(g.V().has("name", Compare.eq, "marko").next(), 1000);
+ map.put(g.V().has("name", "marko").next(), 1000);
final String results = SERIALIZER.serializeResponseAsString(ResponseMessage.build(msg).result(map).create());
final JSONObject json = new JSONObject(results);
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/5ae2fd5c/gremlin-groovy-test/src/main/groovy/org/apache/tinkerpop/gremlin/process/traversal/step/filter/GroovyAndTest.groovy
----------------------------------------------------------------------
diff --git a/gremlin-groovy-test/src/main/groovy/org/apache/tinkerpop/gremlin/process/traversal/step/filter/GroovyAndTest.groovy b/gremlin-groovy-test/src/main/groovy/org/apache/tinkerpop/gremlin/process/traversal/step/filter/GroovyAndTest.groovy
index 7f787d8..8581464 100644
--- a/gremlin-groovy-test/src/main/groovy/org/apache/tinkerpop/gremlin/process/traversal/step/filter/GroovyAndTest.groovy
+++ b/gremlin-groovy-test/src/main/groovy/org/apache/tinkerpop/gremlin/process/traversal/step/filter/GroovyAndTest.groovy
@@ -27,8 +27,7 @@ import org.apache.tinkerpop.gremlin.structure.Vertex
import static org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.__.has
import static org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.__.outE
-import static org.apache.tinkerpop.gremlin.structure.Compare.gt
-import static org.apache.tinkerpop.gremlin.structure.Compare.gte
+import static org.apache.tinkerpop.gremlin.structure.P.*;
/**
* @author Marko A. Rodriguez (http://markorodriguez.com)
@@ -40,12 +39,12 @@ public abstract class GroovyAndTest {
@Override
public Traversal<Vertex, String> get_g_V_andXhasXage_gt_27X__outE_count_gt_2X_name() {
- g.V.and(has('age', gt, 27), outE().count.is(gte, 2l)).name
+ g.V.and(has('age', gt(27)), outE().count.is(gte(2l))).name
}
@Override
public Traversal<Vertex, String> get_g_V_andXoutE__hasXlabel_personX_and_hasXage_gte_32XX_name() {
- g.V.and(outE(), has(T.label, 'person') & has('age', gte, 32)).name
+ g.V.and(outE(), has(T.label, 'person') & has('age', gte(32))).name
}
}
@@ -54,12 +53,12 @@ public abstract class GroovyAndTest {
@Override
public Traversal<Vertex, String> get_g_V_andXhasXage_gt_27X__outE_count_gt_2X_name() {
- ComputerTestHelper.compute("g.V.and(has('age', gt, 27), outE().count.is(gte, 2l)).name", g)
+ ComputerTestHelper.compute("g.V.and(has('age',gt(27)), outE().count.is(gte(2l))).name", g)
}
@Override
public Traversal<Vertex, String> get_g_V_andXoutE__hasXlabel_personX_and_hasXage_gte_32XX_name() {
- ComputerTestHelper.compute("g.V.and(outE(), has(T.label, 'person') & has('age', gte, 32)).name", g)
+ ComputerTestHelper.compute("g.V.and(outE(), has(T.label, 'person') & has('age', gte(32))).name", g)
}
}
}
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/5ae2fd5c/gremlin-groovy-test/src/main/groovy/org/apache/tinkerpop/gremlin/process/traversal/step/filter/GroovyHasTest.groovy
----------------------------------------------------------------------
diff --git a/gremlin-groovy-test/src/main/groovy/org/apache/tinkerpop/gremlin/process/traversal/step/filter/GroovyHasTest.groovy b/gremlin-groovy-test/src/main/groovy/org/apache/tinkerpop/gremlin/process/traversal/step/filter/GroovyHasTest.groovy
index 8f45471..630b103 100644
--- a/gremlin-groovy-test/src/main/groovy/org/apache/tinkerpop/gremlin/process/traversal/step/filter/GroovyHasTest.groovy
+++ b/gremlin-groovy-test/src/main/groovy/org/apache/tinkerpop/gremlin/process/traversal/step/filter/GroovyHasTest.groovy
@@ -23,7 +23,7 @@ import org.apache.tinkerpop.gremlin.process.traversal.Traversal
import org.apache.tinkerpop.gremlin.process.computer.ComputerTestHelper
import org.apache.tinkerpop.gremlin.process.traversal.TraversalEngine
import org.apache.tinkerpop.gremlin.process.UseEngine
-import org.apache.tinkerpop.gremlin.structure.Compare
+import static org.apache.tinkerpop.gremlin.structure.P.*;
import org.apache.tinkerpop.gremlin.structure.Edge
import org.apache.tinkerpop.gremlin.structure.Vertex
import org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.__
@@ -72,7 +72,7 @@ public abstract class GroovyHasTest {
@Override
public Traversal<Vertex, Vertex> get_g_VX1X_hasXage_gt_30X(final Object v1Id) {
- g.V(v1Id).has('age', Compare.gt, 30)
+ g.V(v1Id).has('age', gt(30))
}
@Override
@@ -82,7 +82,7 @@ public abstract class GroovyHasTest {
@Override
public Traversal<Vertex, Vertex> get_g_V_hasXage_gt_30X() {
- g.V.has('age', Compare.gt, 30)
+ g.V.has('age', gt(30))
}
@Override
@@ -112,7 +112,7 @@ public abstract class GroovyHasTest {
@Override
public Traversal<Vertex, Vertex> get_g_VX1X_outE_hasXweight_inside_0_06X_inV(final Object v1Id) {
- g.V(v1Id).outE.has('weight', Compare.inside, [0.0d, 0.6d]).inV
+ g.V(v1Id).outE.has('weight',inside(0.0d, 0.6d)).inV
}
}
@@ -155,7 +155,7 @@ public abstract class GroovyHasTest {
@Override
public Traversal<Vertex, Vertex> get_g_VX1X_hasXage_gt_30X(final Object v1Id) {
- ComputerTestHelper.compute("g.V(${v1Id}).has('age', Compare.gt, 30)", g);
+ ComputerTestHelper.compute("g.V(${v1Id}).has('age', gt(30))", g);
}
@Override
@@ -165,7 +165,7 @@ public abstract class GroovyHasTest {
@Override
public Traversal<Vertex, Vertex> get_g_V_hasXage_gt_30X() {
- ComputerTestHelper.compute("g.V.has('age', Compare.gt, 30)", g);
+ ComputerTestHelper.compute("g.V.has('age', gt(30))", g);
}
@Override
@@ -195,7 +195,7 @@ public abstract class GroovyHasTest {
@Override
public Traversal<Vertex, Vertex> get_g_VX1X_outE_hasXweight_inside_0_06X_inV(final Object v1Id) {
- ComputerTestHelper.compute("g.V(${v1Id}).outE.has('weight', Compare.inside, [0.0d, 0.6d]).inV", g);
+ ComputerTestHelper.compute("g.V(${v1Id}).outE.has('weight', inside(0.0d, 0.6d)).inV", g);
}
}
}
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/5ae2fd5c/gremlin-groovy-test/src/main/groovy/org/apache/tinkerpop/gremlin/process/traversal/step/filter/GroovyIsTest.groovy
----------------------------------------------------------------------
diff --git a/gremlin-groovy-test/src/main/groovy/org/apache/tinkerpop/gremlin/process/traversal/step/filter/GroovyIsTest.groovy b/gremlin-groovy-test/src/main/groovy/org/apache/tinkerpop/gremlin/process/traversal/step/filter/GroovyIsTest.groovy
index 6e57af9..d1b2051 100644
--- a/gremlin-groovy-test/src/main/groovy/org/apache/tinkerpop/gremlin/process/traversal/step/filter/GroovyIsTest.groovy
+++ b/gremlin-groovy-test/src/main/groovy/org/apache/tinkerpop/gremlin/process/traversal/step/filter/GroovyIsTest.groovy
@@ -22,7 +22,7 @@ import org.apache.tinkerpop.gremlin.process.traversal.Traversal
import org.apache.tinkerpop.gremlin.process.computer.ComputerTestHelper
import org.apache.tinkerpop.gremlin.process.traversal.TraversalEngine
import org.apache.tinkerpop.gremlin.process.UseEngine
-import org.apache.tinkerpop.gremlin.structure.Compare
+import static org.apache.tinkerpop.gremlin.structure.P.*;
import org.apache.tinkerpop.gremlin.structure.Vertex
import org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.__
/**
@@ -40,12 +40,12 @@ public abstract class GroovyIsTest {
@Override
public Traversal<Vertex, Integer> get_g_V_valuesXageX_isXlte_30X() {
- return g.V().values('age').is(Compare.lte, 30);
+ return g.V().values('age').is(lte(30));
}
@Override
public Traversal<Vertex, Integer> get_g_V_valuesXageX_isXgte_29X_isXlt_34X() {
- return g.V().values('age').is(Compare.gte, 29).is(Compare.lt, 34);
+ return g.V().values('age').is(gte(29)).is(lt(34));
}
@Override
@@ -55,7 +55,7 @@ public abstract class GroovyIsTest {
@Override
public Traversal<Vertex, String> get_g_V_hasXinXcreatedX_count_isXgte_2XX_valuesXnameX() {
- return g.V().has(__.in('created').count().is(Compare.gte, 2l)).values('name');
+ return g.V().has(__.in('created').count().is(gte(2l))).values('name');
}
}
@@ -69,12 +69,12 @@ public abstract class GroovyIsTest {
@Override
public Traversal<Vertex, Integer> get_g_V_valuesXageX_isXlte_30X() {
- ComputerTestHelper.compute("g.V().values('age').is(Compare.lte, 30)", g)
+ ComputerTestHelper.compute("g.V().values('age').is(lte(30))", g)
}
@Override
public Traversal<Vertex, Integer> get_g_V_valuesXageX_isXgte_29X_isXlt_34X() {
- ComputerTestHelper.compute("g.V().values('age').is(Compare.gte, 29).is(Compare.lt, 34)", g)
+ ComputerTestHelper.compute("g.V().values('age').is(gte(29)).is(lt(34))", g)
}
@Override
@@ -84,7 +84,7 @@ public abstract class GroovyIsTest {
@Override
public Traversal<Vertex, String> get_g_V_hasXinXcreatedX_count_isXgte_2XX_valuesXnameX() {
- ComputerTestHelper.compute("g.V().has(__.in('created').count().is(Compare.gte, 2l)).values('name')", g)
+ ComputerTestHelper.compute("g.V().has(__.in('created').count().is(gte(2l))).values('name')", g)
}
}
}
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/5ae2fd5c/gremlin-groovy-test/src/main/groovy/org/apache/tinkerpop/gremlin/process/traversal/step/filter/GroovyOrTest.groovy
----------------------------------------------------------------------
diff --git a/gremlin-groovy-test/src/main/groovy/org/apache/tinkerpop/gremlin/process/traversal/step/filter/GroovyOrTest.groovy b/gremlin-groovy-test/src/main/groovy/org/apache/tinkerpop/gremlin/process/traversal/step/filter/GroovyOrTest.groovy
index b82c3a3..1e711fe 100644
--- a/gremlin-groovy-test/src/main/groovy/org/apache/tinkerpop/gremlin/process/traversal/step/filter/GroovyOrTest.groovy
+++ b/gremlin-groovy-test/src/main/groovy/org/apache/tinkerpop/gremlin/process/traversal/step/filter/GroovyOrTest.groovy
@@ -18,17 +18,17 @@
*/
package org.apache.tinkerpop.gremlin.process.traversal.step.filter
+import org.apache.tinkerpop.gremlin.process.UseEngine
import org.apache.tinkerpop.gremlin.process.computer.ComputerTestHelper
-import org.apache.tinkerpop.gremlin.structure.T
import org.apache.tinkerpop.gremlin.process.traversal.Traversal
import org.apache.tinkerpop.gremlin.process.traversal.TraversalEngine
-import org.apache.tinkerpop.gremlin.process.UseEngine
+import org.apache.tinkerpop.gremlin.structure.T
import org.apache.tinkerpop.gremlin.structure.Vertex
import static org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.__.has
import static org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.__.outE
-import static org.apache.tinkerpop.gremlin.structure.Compare.gt
-import static org.apache.tinkerpop.gremlin.structure.Compare.gte
+import static org.apache.tinkerpop.gremlin.structure.P.gt
+import static org.apache.tinkerpop.gremlin.structure.P.gte;
/**
* @author Marko A. Rodriguez (http://markorodriguez.com)
@@ -40,12 +40,12 @@ public abstract class GroovyOrTest {
@Override
public Traversal<Vertex, String> get_g_V_orXhasXage_gt_27X__outE_count_gte_2X_name() {
- g.V.or(has('age', gt, 27), outE().count.gte(2l)).name
+ g.V.or(has('age', gt(27)), outE().count.is(gte(2l))).name
}
@Override
public Traversal<Vertex, String> get_g_V_orXoutEXknowsX__hasXlabel_softwareX_or_hasXage_gte_35XX_name() {
- g.V.or(outE('knows'), has(T.label, 'software') | has('age', gte, 35)).name
+ g.V.or(outE('knows'), has(T.label, 'software') | has('age', gte(35))).name
}
}
@@ -54,12 +54,12 @@ public abstract class GroovyOrTest {
@Override
public Traversal<Vertex, String> get_g_V_orXhasXage_gt_27X__outE_count_gte_2X_name() {
- ComputerTestHelper.compute("g.V.or(has('age', gt, 27), outE().count.gte(2l)).name", g)
+ ComputerTestHelper.compute("g.V.or(has('age', gt(27)), outE().count.is(gte(2l))).name", g)
}
@Override
public Traversal<Vertex, String> get_g_V_orXoutEXknowsX__hasXlabel_softwareX_or_hasXage_gte_35XX_name() {
- ComputerTestHelper.compute("g.V.or(outE('knows'), has(T.label, 'software') | has('age', gte, 35)).name", g)
+ ComputerTestHelper.compute("g.V.or(outE('knows'), has(T.label, 'software') | has('age', gte(35))).name", g)
}
}
}
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/5ae2fd5c/gremlin-groovy-test/src/main/groovy/org/apache/tinkerpop/gremlin/process/traversal/step/map/GroovyVertexTest.groovy
----------------------------------------------------------------------
diff --git a/gremlin-groovy-test/src/main/groovy/org/apache/tinkerpop/gremlin/process/traversal/step/map/GroovyVertexTest.groovy b/gremlin-groovy-test/src/main/groovy/org/apache/tinkerpop/gremlin/process/traversal/step/map/GroovyVertexTest.groovy
index bb3506c..c1a07bb 100644
--- a/gremlin-groovy-test/src/main/groovy/org/apache/tinkerpop/gremlin/process/traversal/step/map/GroovyVertexTest.groovy
+++ b/gremlin-groovy-test/src/main/groovy/org/apache/tinkerpop/gremlin/process/traversal/step/map/GroovyVertexTest.groovy
@@ -22,7 +22,7 @@ import org.apache.tinkerpop.gremlin.process.traversal.Traversal
import org.apache.tinkerpop.gremlin.process.computer.ComputerTestHelper
import org.apache.tinkerpop.gremlin.process.traversal.TraversalEngine
import org.apache.tinkerpop.gremlin.process.UseEngine
-import org.apache.tinkerpop.gremlin.structure.Compare
+import static org.apache.tinkerpop.gremlin.structure.P.*;
import org.apache.tinkerpop.gremlin.structure.Direction
import org.apache.tinkerpop.gremlin.structure.Edge
import org.apache.tinkerpop.gremlin.structure.Vertex
@@ -158,7 +158,7 @@ public abstract class GroovyVertexTest {
@Override
public Traversal<Vertex, Vertex> get_g_VX4X_bothE_hasXweight_lt_1X_otherV(final Object v4Id) {
- g.V(v4Id).bothE.has('weight', Compare.lt, 1.0d).otherV
+ g.V(v4Id).bothE.has('weight', lt(1.0d)).otherV
}
@Override
@@ -292,7 +292,7 @@ public abstract class GroovyVertexTest {
@Override
public Traversal<Vertex, Vertex> get_g_VX4X_bothE_hasXweight_lt_1X_otherV(final Object v4Id) {
- ComputerTestHelper.compute("g.V(${v4Id}).bothE.has('weight', Compare.lt, 1.0d).otherV", g);
+ ComputerTestHelper.compute("g.V(${v4Id}).bothE.has('weight', lt(1.0d)).otherV", g);
}
@Override
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/5ae2fd5c/gremlin-groovy-test/src/main/java/org/apache/tinkerpop/gremlin/groovy/engine/GremlinExecutorPerformanceTest.java
----------------------------------------------------------------------
diff --git a/gremlin-groovy-test/src/main/java/org/apache/tinkerpop/gremlin/groovy/engine/GremlinExecutorPerformanceTest.java b/gremlin-groovy-test/src/main/java/org/apache/tinkerpop/gremlin/groovy/engine/GremlinExecutorPerformanceTest.java
index 651aaab..9155036 100644
--- a/gremlin-groovy-test/src/main/java/org/apache/tinkerpop/gremlin/groovy/engine/GremlinExecutorPerformanceTest.java
+++ b/gremlin-groovy-test/src/main/java/org/apache/tinkerpop/gremlin/groovy/engine/GremlinExecutorPerformanceTest.java
@@ -28,8 +28,8 @@ import org.apache.commons.configuration.Configuration;
import org.apache.tinkerpop.gremlin.AbstractGremlinTest;
import org.apache.tinkerpop.gremlin.LoadGraphWith;
import org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.__;
-import org.apache.tinkerpop.gremlin.structure.Compare;
import org.apache.tinkerpop.gremlin.structure.Graph;
+import org.apache.tinkerpop.gremlin.structure.P;
import org.apache.tinkerpop.gremlin.structure.Vertex;
import org.junit.Rule;
import org.junit.Test;
@@ -111,7 +111,7 @@ public class GremlinExecutorPerformanceTest extends AbstractGremlinTest {
sb.append((String) start.value("step"));
syntaxGraph.traversal().V(start).times(targetStepCount - 1).repeat(
- __.local(__.outE().has("weight", Compare.gte, rand.nextDouble())
+ __.local(__.outE().has("weight", P.gte(rand.nextDouble()))
.inV().order().by(this::shuffle).limit(1)).sideEffect(t -> sb.append((String) t.get().value("step")))
).iterate();
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/5ae2fd5c/gremlin-groovy-test/src/main/java/org/apache/tinkerpop/gremlin/groovy/jsr223/GremlinGroovyScriptEngineOverGraphTest.java
----------------------------------------------------------------------
diff --git a/gremlin-groovy-test/src/main/java/org/apache/tinkerpop/gremlin/groovy/jsr223/GremlinGroovyScriptEngineOverGraphTest.java b/gremlin-groovy-test/src/main/java/org/apache/tinkerpop/gremlin/groovy/jsr223/GremlinGroovyScriptEngineOverGraphTest.java
index da24479..7eb892b 100644
--- a/gremlin-groovy-test/src/main/java/org/apache/tinkerpop/gremlin/groovy/jsr223/GremlinGroovyScriptEngineOverGraphTest.java
+++ b/gremlin-groovy-test/src/main/java/org/apache/tinkerpop/gremlin/groovy/jsr223/GremlinGroovyScriptEngineOverGraphTest.java
@@ -81,7 +81,7 @@ public class GremlinGroovyScriptEngineOverGraphTest extends AbstractGremlinTest
final ScriptEngine engineWithImports = new GremlinGroovyScriptEngine(new DefaultImportCustomizerProvider());
engineWithImports.put("g", g);
assertEquals(Vertex.class.getName(), engineWithImports.eval("Vertex.class.getName()"));
- assertEquals(2l, engineWithImports.eval("g.V().has('age',Compare.gt,30).count().next()"));
+ assertEquals(2l, engineWithImports.eval("g.V().has('age',gt(30)).count().next()"));
assertEquals(Direction.IN, engineWithImports.eval("Direction.IN"));
assertEquals(Direction.OUT, engineWithImports.eval("Direction.OUT"));
assertEquals(Direction.BOTH, engineWithImports.eval("Direction.BOTH"));
@@ -94,7 +94,7 @@ public class GremlinGroovyScriptEngineOverGraphTest extends AbstractGremlinTest
final GremlinGroovyScriptEngine engine = new GremlinGroovyScriptEngine(new DefaultImportCustomizerProvider());
engine.put("g", g);
assertEquals(Vertex.class.getName(), engine.eval("Vertex.class.getName()"));
- assertEquals(2l, engine.eval("g.V().has('age',Compare.gt,30).count().next()"));
+ assertEquals(2l, engine.eval("g.V().has('age',gt(30)).count().next()"));
assertEquals(Direction.IN, engine.eval("Direction.IN"));
assertEquals(Direction.OUT, engine.eval("Direction.OUT"));
assertEquals(Direction.BOTH, engine.eval("Direction.BOTH"));
@@ -110,7 +110,7 @@ public class GremlinGroovyScriptEngineOverGraphTest extends AbstractGremlinTest
engine.put("g", g);
assertEquals(YamlConfiguration.class.getName(), engine.eval("YamlConfiguration.class.getName()"));
assertEquals(Vertex.class.getName(), engine.eval("Vertex.class.getName()"));
- assertEquals(2l, engine.eval("g.V().has('age',Compare.gt,30).count().next()"));
+ assertEquals(2l, engine.eval("g.V().has('age',gt(30)).count().next()"));
assertEquals(Direction.IN, engine.eval("Direction.IN"));
assertEquals(Direction.OUT, engine.eval("Direction.OUT"));
assertEquals(Direction.BOTH, engine.eval("Direction.BOTH"));
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/5ae2fd5c/gremlin-groovy/src/main/groovy/org/apache/tinkerpop/gremlin/groovy/loaders/SugarLoader.groovy
----------------------------------------------------------------------
diff --git a/gremlin-groovy/src/main/groovy/org/apache/tinkerpop/gremlin/groovy/loaders/SugarLoader.groovy b/gremlin-groovy/src/main/groovy/org/apache/tinkerpop/gremlin/groovy/loaders/SugarLoader.groovy
index e256db1..21a2bcd 100644
--- a/gremlin-groovy/src/main/groovy/org/apache/tinkerpop/gremlin/groovy/loaders/SugarLoader.groovy
+++ b/gremlin-groovy/src/main/groovy/org/apache/tinkerpop/gremlin/groovy/loaders/SugarLoader.groovy
@@ -51,8 +51,6 @@ class SugarLoader {
GraphTraversal.metaClass.methodMissing = { final String name, final def args ->
if (name.toLowerCase().equals(FROM))
return ((GraphTraversal.Admin) args[0]).addStep(((GraphTraversal.Admin) delegate).getSteps()[0]);
- else if (Compare.hasCompare(name))
- return ((GraphTraversal) delegate).is(Compare.valueOf(name), *args);
else
return ((GraphTraversal) delegate).values(name);
}
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/5ae2fd5c/gremlin-groovy/src/main/java/org/apache/tinkerpop/gremlin/groovy/AbstractImportCustomizerProvider.java
----------------------------------------------------------------------
diff --git a/gremlin-groovy/src/main/java/org/apache/tinkerpop/gremlin/groovy/AbstractImportCustomizerProvider.java b/gremlin-groovy/src/main/java/org/apache/tinkerpop/gremlin/groovy/AbstractImportCustomizerProvider.java
index 19f5537..c9d2228 100644
--- a/gremlin-groovy/src/main/java/org/apache/tinkerpop/gremlin/groovy/AbstractImportCustomizerProvider.java
+++ b/gremlin-groovy/src/main/java/org/apache/tinkerpop/gremlin/groovy/AbstractImportCustomizerProvider.java
@@ -28,6 +28,7 @@ import org.apache.tinkerpop.gremlin.process.computer.clustering.peerpressure.Pee
import org.apache.tinkerpop.gremlin.process.computer.ranking.pagerank.PageRankVertexProgram;
import org.apache.tinkerpop.gremlin.process.computer.traversal.TraversalVertexProgram;
import org.apache.tinkerpop.gremlin.process.traversal.Scope;
+import org.apache.tinkerpop.gremlin.structure.P;
import org.apache.tinkerpop.gremlin.structure.T;
import org.apache.tinkerpop.gremlin.process.traversal.Traversal;
import org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.GraphTraversal;
@@ -98,12 +99,14 @@ public abstract class AbstractImportCustomizerProvider implements ImportCustomiz
staticImports.add(__.class.getCanonicalName() + DOT_STAR);
staticImports.add(TraversalOptionParent.Pick.class.getCanonicalName() + DOT_STAR);
staticImports.add(GraphTraversalSource.class.getCanonicalName() + DOT_STAR);
- staticImports.add(Compare.class.getCanonicalName() + DOT_STAR);
- staticImports.add(Contains.class.getCanonicalName() + DOT_STAR);
+ //staticImports.add(Compare.class.getCanonicalName() + DOT_STAR);
+ //staticImports.add(Contains.class.getCanonicalName() + DOT_STAR);
+ staticImports.add(P.class.getCanonicalName() + DOT_STAR);
staticImports.add(Order.class.getCanonicalName() + DOT_STAR);
staticImports.add(Operator.class.getCanonicalName() + DOT_STAR);
staticImports.add(Scope.class.getCanonicalName() + DOT_STAR);
+
// utils
imports.add(Gremlin.class.getPackage().getName() + DOT_STAR);
imports.add(GremlinLoader.class.getPackage().getName() + DOT_STAR);
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/5ae2fd5c/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/CoreTraversalTest.java
----------------------------------------------------------------------
diff --git a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/CoreTraversalTest.java b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/CoreTraversalTest.java
index c98489a..975f8ac 100644
--- a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/CoreTraversalTest.java
+++ b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/CoreTraversalTest.java
@@ -194,7 +194,7 @@ public class CoreTraversalTest extends AbstractGremlinProcessTest {
@Test
@LoadGraphWith(MODERN)
public void shouldTraversalResetProperly() {
- final Traversal<Object, Vertex> traversal = as("a").out().out().has("name", Contains.within, Arrays.asList("ripple", "lop")).as("b");
+ final Traversal<Object, Vertex> traversal = as("a").out().out().has("name", P.within("ripple", "lop")).as("b");
if (new Random().nextBoolean()) traversal.asAdmin().reset();
assertFalse(traversal.hasNext());
traversal.asAdmin().addStarts(traversal.asAdmin().getTraverserGenerator().generateIterator(g.V(), traversal.asAdmin().getSteps().get(0), 1l));
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/5ae2fd5c/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/AndTest.java
----------------------------------------------------------------------
diff --git a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/AndTest.java b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/AndTest.java
index 7283c35..2881e42 100644
--- a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/AndTest.java
+++ b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/AndTest.java
@@ -20,20 +20,19 @@ package org.apache.tinkerpop.gremlin.process.traversal.step.filter;
import org.apache.tinkerpop.gremlin.LoadGraphWith;
import org.apache.tinkerpop.gremlin.process.AbstractGremlinProcessTest;
-import org.apache.tinkerpop.gremlin.structure.T;
+import org.apache.tinkerpop.gremlin.process.UseEngine;
import org.apache.tinkerpop.gremlin.process.traversal.Traversal;
import org.apache.tinkerpop.gremlin.process.traversal.TraversalEngine;
-import org.apache.tinkerpop.gremlin.process.UseEngine;
-import org.apache.tinkerpop.gremlin.structure.Compare;
+import org.apache.tinkerpop.gremlin.structure.P;
+import org.apache.tinkerpop.gremlin.structure.T;
import org.apache.tinkerpop.gremlin.structure.Vertex;
import org.junit.Test;
import java.util.Arrays;
import static org.apache.tinkerpop.gremlin.LoadGraphWith.GraphData.MODERN;
-import static org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.__.*;
-import static org.apache.tinkerpop.gremlin.structure.Compare.gt;
-import static org.apache.tinkerpop.gremlin.structure.Compare.gte;
+import static org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.__.has;
+import static org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.__.outE;
/**
@@ -68,12 +67,12 @@ public abstract class AndTest extends AbstractGremlinProcessTest {
@Override
public Traversal<Vertex, String> get_g_V_andXhasXage_gt_27X__outE_count_gt_2X_name() {
- return g.V().and(has("age", gt, 27), outE().count().is(gte, 2l)).values("name");
+ return g.V().and(has("age", P.gt(27)), outE().count().is(P.gte(2l))).values("name");
}
@Override
public Traversal<Vertex, String> get_g_V_andXoutE__hasXlabel_personX_and_hasXage_gte_32XX_name() {
- return g.V().and(outE(), has(T.label, "person").and().has("age", Compare.gte, 32)).values("name");
+ return g.V().and(outE(), has(T.label, "person").and().has("age", P.gte(32))).values("name");
}
}
}
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/5ae2fd5c/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/HasTest.java
----------------------------------------------------------------------
diff --git a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/HasTest.java b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/HasTest.java
index d0733dc..3ec0001 100644
--- a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/HasTest.java
+++ b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/HasTest.java
@@ -20,6 +20,7 @@ package org.apache.tinkerpop.gremlin.process.traversal.step.filter;
import org.apache.tinkerpop.gremlin.LoadGraphWith;
import org.apache.tinkerpop.gremlin.process.AbstractGremlinProcessTest;
+import org.apache.tinkerpop.gremlin.structure.P;
import org.apache.tinkerpop.gremlin.structure.T;
import org.apache.tinkerpop.gremlin.process.traversal.Traversal;
import org.apache.tinkerpop.gremlin.process.traversal.TraversalEngine;
@@ -209,7 +210,7 @@ public abstract class HasTest extends AbstractGremlinProcessTest {
@Test
@LoadGraphWith(CREW)
- public void g_E_hasXlabelXuses_traversesX() {
+ public void g_E_hasLabelXuses_traversesX() {
final Traversal<Edge, Edge> traversal = get_g_E_hasLabelXuses_traversesX();
printTraversalForm(traversal);
int counter = 0;
@@ -223,7 +224,7 @@ public abstract class HasTest extends AbstractGremlinProcessTest {
@Test
@LoadGraphWith(CREW)
- public void g_V_hasXlabelXperson_software_blahX() {
+ public void g_V_hasLabelXperson_software_blahX() {
final Traversal<Vertex, Vertex> traversal = get_g_V_hasLabelXperson_software_blahX();
printTraversalForm(traversal);
int counter = 0;
@@ -322,7 +323,7 @@ public abstract class HasTest extends AbstractGremlinProcessTest {
@Override
public Traversal<Vertex, Vertex> get_g_VX1X_hasXage_gt_30X(final Object v1Id) {
- return g.V(v1Id).has("age", Compare.gt, 30);
+ return g.V(v1Id).has("age", P.gt(30));
}
@Override
@@ -332,7 +333,7 @@ public abstract class HasTest extends AbstractGremlinProcessTest {
@Override
public Traversal<Vertex, Vertex> get_g_V_hasXage_gt_30X() {
- return g.V().has("age", Compare.gt, 30);
+ return g.V().has("age", P.gt(30));
}
@Override
@@ -362,7 +363,7 @@ public abstract class HasTest extends AbstractGremlinProcessTest {
@Override
public Traversal<Vertex, Vertex> get_g_VX1X_outE_hasXweight_inside_0_06X_inV(final Object v1Id) {
- return g.V(v1Id).outE().has("weight", Compare.inside, Arrays.asList(0.0d, 0.6d)).inV();
+ return g.V(v1Id).outE().has("weight", P.inside(0.0d, 0.6d)).inV();
}
}
}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/5ae2fd5c/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/IsTest.java
----------------------------------------------------------------------
diff --git a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/IsTest.java b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/IsTest.java
index 628902f..eb5b9ea 100644
--- a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/IsTest.java
+++ b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/IsTest.java
@@ -24,6 +24,7 @@ import org.apache.tinkerpop.gremlin.process.traversal.Traversal;
import org.apache.tinkerpop.gremlin.process.traversal.TraversalEngine;
import org.apache.tinkerpop.gremlin.process.UseEngine;
import org.apache.tinkerpop.gremlin.structure.Compare;
+import org.apache.tinkerpop.gremlin.structure.P;
import org.apache.tinkerpop.gremlin.structure.Vertex;
import org.junit.Test;
@@ -104,12 +105,12 @@ public abstract class IsTest extends AbstractGremlinProcessTest {
@Override
public Traversal<Vertex, Integer> get_g_V_valuesXageX_isXlte_30X() {
- return g.V().<Integer>values("age").is(Compare.lte, 30);
+ return g.V().<Integer>values("age").is(P.lte(30));
}
@Override
public Traversal<Vertex, Integer> get_g_V_valuesXageX_isXgte_29X_isXlt_34X() {
- return g.V().<Integer>values("age").is(Compare.gte, 29).is(Compare.lt, 34);
+ return g.V().<Integer>values("age").is(P.gte(29)).is(P.lt(34));
}
@Override
@@ -119,7 +120,7 @@ public abstract class IsTest extends AbstractGremlinProcessTest {
@Override
public Traversal<Vertex, String> get_g_V_hasXinXcreatedX_count_isXgte_2XX_valuesXnameX() {
- return g.V().has(in("created").count().is(Compare.gte, 2l)).values("name");
+ return g.V().has(in("created").count().is(P.gte(2l))).values("name");
}
}
}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/5ae2fd5c/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/OrTest.java
----------------------------------------------------------------------
diff --git a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/OrTest.java b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/OrTest.java
index d0df0a4..a342f38 100644
--- a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/OrTest.java
+++ b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/OrTest.java
@@ -20,11 +20,11 @@ package org.apache.tinkerpop.gremlin.process.traversal.step.filter;
import org.apache.tinkerpop.gremlin.LoadGraphWith;
import org.apache.tinkerpop.gremlin.process.AbstractGremlinProcessTest;
-import org.apache.tinkerpop.gremlin.structure.T;
+import org.apache.tinkerpop.gremlin.process.UseEngine;
import org.apache.tinkerpop.gremlin.process.traversal.Traversal;
import org.apache.tinkerpop.gremlin.process.traversal.TraversalEngine;
-import org.apache.tinkerpop.gremlin.process.UseEngine;
-import org.apache.tinkerpop.gremlin.structure.Compare;
+import org.apache.tinkerpop.gremlin.structure.P;
+import org.apache.tinkerpop.gremlin.structure.T;
import org.apache.tinkerpop.gremlin.structure.Vertex;
import org.junit.Test;
@@ -33,8 +33,6 @@ import java.util.Arrays;
import static org.apache.tinkerpop.gremlin.LoadGraphWith.GraphData.MODERN;
import static org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.__.has;
import static org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.__.outE;
-import static org.apache.tinkerpop.gremlin.structure.Compare.gt;
-import static org.apache.tinkerpop.gremlin.structure.Compare.gte;
/**
* @author Marko A. Rodriguez (http://markorodriguez.com)
@@ -66,12 +64,12 @@ public abstract class OrTest extends AbstractGremlinProcessTest {
public static class Traversals extends OrTest {
@Override
public Traversal<Vertex, String> get_g_V_orXhasXage_gt_27X__outE_count_gte_2X_name() {
- return g.V().or(has("age", gt, 27), outE().count().is(gte, 2l)).values("name");
+ return g.V().or(has("age", P.gt(27)), outE().count().is(P.gte(2l))).values("name");
}
@Override
public Traversal<Vertex, String> get_g_V_orXoutEXknowsX__hasXlabel_softwareX_or_hasXage_gte_35XX_name() {
- return g.V().or(outE("knows"), has(T.label, "software").or().has("age", Compare.gte, 35)).values("name");
+ return g.V().or(outE("knows"), has(T.label, "software").or().has("age", P.gte(35))).values("name");
}
}
}
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/5ae2fd5c/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/VertexTest.java
----------------------------------------------------------------------
diff --git a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/VertexTest.java b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/VertexTest.java
index 098615c..1aa2bab 100644
--- a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/VertexTest.java
+++ b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/VertexTest.java
@@ -26,6 +26,7 @@ import org.apache.tinkerpop.gremlin.process.traversal.TraversalEngine;
import org.apache.tinkerpop.gremlin.structure.Compare;
import org.apache.tinkerpop.gremlin.structure.Direction;
import org.apache.tinkerpop.gremlin.structure.Edge;
+import org.apache.tinkerpop.gremlin.structure.P;
import org.apache.tinkerpop.gremlin.structure.Vertex;
import org.junit.Test;
@@ -620,7 +621,7 @@ public abstract class VertexTest extends AbstractGremlinProcessTest {
@Override
public Traversal<Vertex, Vertex> get_g_VX4X_bothE_hasXweight_lt_1X_otherV(Object v4Id) {
- return g.V(v4Id).bothE().has("weight", Compare.lt, 1d).otherV();
+ return g.V(v4Id).bothE().has("weight", P.lt(1d)).otherV();
}
@Override
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/5ae2fd5c/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/decoration/EventStrategyProcessTest.java
----------------------------------------------------------------------
diff --git a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/decoration/EventStrategyProcessTest.java b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/decoration/EventStrategyProcessTest.java
index 12b9b15..854dcab 100644
--- a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/decoration/EventStrategyProcessTest.java
+++ b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/decoration/EventStrategyProcessTest.java
@@ -25,7 +25,6 @@ import org.apache.tinkerpop.gremlin.process.UseEngine;
import org.apache.tinkerpop.gremlin.process.traversal.TraversalEngine;
import org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.GraphTraversalSource;
import org.apache.tinkerpop.gremlin.process.traversal.step.util.event.MutationListener;
-import org.apache.tinkerpop.gremlin.structure.Compare;
import org.apache.tinkerpop.gremlin.structure.Edge;
import org.apache.tinkerpop.gremlin.structure.Graph;
import org.apache.tinkerpop.gremlin.structure.Property;
@@ -60,7 +59,7 @@ public class EventStrategyProcessTest extends AbstractGremlinProcessTest {
final GraphTraversalSource gts = create(eventStrategy);
gts.V().addV("any", "thing").next();
- tryCommit(graph, g -> assertEquals(1, IteratorUtils.count(gts.V().has("any", Compare.eq, "thing"))));
+ tryCommit(graph, g -> assertEquals(1, IteratorUtils.count(gts.V().has("any", "thing"))));
assertEquals(1, listener1.addVertexEventRecorded());
assertEquals(1, listener2.addVertexEventRecorded());
}
@@ -78,7 +77,7 @@ public class EventStrategyProcessTest extends AbstractGremlinProcessTest {
final GraphTraversalSource gts = create(eventStrategy);
gts.addV("any", "thing").next();
- tryCommit(graph, g -> assertEquals(1, IteratorUtils.count(gts.V().has("any", Compare.eq, "thing"))));
+ tryCommit(graph, g -> assertEquals(1, IteratorUtils.count(gts.V().has("any", "thing"))));
assertEquals(1, listener1.addVertexEventRecorded());
assertEquals(1, listener2.addVertexEventRecorded());
}
@@ -145,7 +144,7 @@ public class EventStrategyProcessTest extends AbstractGremlinProcessTest {
final GraphTraversalSource gts = create(eventStrategy);
gts.V().addV("any", "thing").property(VertexProperty.Cardinality.single, "this", "thing").next();
- tryCommit(graph, g -> assertEquals(1, IteratorUtils.count(gts.V().has("this", Compare.eq, "thing"))));
+ tryCommit(graph, g -> assertEquals(1, IteratorUtils.count(gts.V().has("this", "thing"))));
assertEquals(1, listener1.addVertexEventRecorded());
assertEquals(1, listener2.addVertexEventRecorded());
@@ -168,7 +167,7 @@ public class EventStrategyProcessTest extends AbstractGremlinProcessTest {
final Vertex vAny = gts.V().addV("any", "thing").next();
gts.V(vAny).property(VertexProperty.Cardinality.single, "any", "thing else").next();
- tryCommit(graph, g -> assertEquals(1, IteratorUtils.count(gts.V().has("any", Compare.eq, "thing else"))));
+ tryCommit(graph, g -> assertEquals(1, IteratorUtils.count(gts.V().has("any", "thing else"))));
assertEquals(1, listener1.addVertexEventRecorded());
assertEquals(1, listener2.addVertexEventRecorded());
@@ -192,7 +191,7 @@ public class EventStrategyProcessTest extends AbstractGremlinProcessTest {
final Vertex vAny = gts.V().addV("any", "thing").next();
gts.V(vAny).properties("any").property("is", "bad").next();
- tryCommit(graph, g -> assertEquals(1, IteratorUtils.count(gts.V().has("any", Compare.eq, "thing"))));
+ tryCommit(graph, g -> assertEquals(1, IteratorUtils.count(gts.V().has("any", "thing"))));
assertEquals(1, listener1.addVertexEventRecorded());
assertEquals(1, listener2.addVertexEventRecorded());
@@ -351,7 +350,7 @@ public class EventStrategyProcessTest extends AbstractGremlinProcessTest {
gts.V(vAny).properties("any").property("is", "bad").next();
gts.V(vAny).properties("any").properties("is").drop().iterate();
- tryCommit(graph, g -> assertEquals(1, IteratorUtils.count(gts.V().has("any", Compare.eq, "thing"))));
+ tryCommit(graph, g -> assertEquals(1, IteratorUtils.count(gts.V().has("any", "thing"))));
assertEquals(1, listener1.addVertexEventRecorded());
assertEquals(1, listener2.addVertexEventRecorded());
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/5ae2fd5c/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/IoTest.java
----------------------------------------------------------------------
diff --git a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/IoTest.java b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/IoTest.java
index 5a28680..429326e 100644
--- a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/IoTest.java
+++ b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/IoTest.java
@@ -1266,7 +1266,7 @@ public class IoTest extends AbstractGremlinTest {
public void shouldReadWriteVerticesNoEdgesToGryoManual() throws Exception {
try (final ByteArrayOutputStream os = new ByteArrayOutputStream()) {
final GryoWriter writer = graph.io(gryo).writer().create();
- writer.writeVertices(os, g.V().has("age", Compare.gt, 30));
+ writer.writeVertices(os, g.V().has("age", P.gt(30)));
final AtomicInteger called = new AtomicInteger(0);
final GryoReader reader = graph.io(gryo).reader().create();
@@ -1297,7 +1297,7 @@ public class IoTest extends AbstractGremlinTest {
public void shouldReadWriteVerticesNoEdgesToGryo() throws Exception {
try (final ByteArrayOutputStream os = new ByteArrayOutputStream()) {
final GryoWriter writer = graph.io(gryo).writer().create();
- writer.writeVertices(os, g.V().has("age", Compare.gt, 30));
+ writer.writeVertices(os, g.V().has("age", P.gt(30)));
final AtomicInteger called = new AtomicInteger(0);
final GryoReader reader = graph.io(gryo).reader().create();
@@ -1324,7 +1324,7 @@ public class IoTest extends AbstractGremlinTest {
public void shouldReadWriteVerticesNoEdgesToGraphSONManual() throws Exception {
try (final ByteArrayOutputStream os = new ByteArrayOutputStream()) {
final GraphSONWriter writer = graph.io(graphson).writer().create();
- writer.writeVertices(os, g.V().has("age", Compare.gt, 30));
+ writer.writeVertices(os, g.V().has("age", P.gt(30)));
final AtomicInteger called = new AtomicInteger(0);
final GraphSONReader reader = graph.io(graphson).reader().create();
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/5ae2fd5c/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/VertexPropertyTest.java
----------------------------------------------------------------------
diff --git a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/VertexPropertyTest.java b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/VertexPropertyTest.java
index 1d70416..6f42be4 100644
--- a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/VertexPropertyTest.java
+++ b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/VertexPropertyTest.java
@@ -454,7 +454,7 @@ public class VertexPropertyTest extends AbstractGremlinTest {
assertEquals(0, IteratorUtils.count(marko.properties("blah")));
});
- g.V().properties("name").has(T.value, (a, b) -> ((Class) b).isAssignableFrom(a.getClass()), Integer.class).forEachRemaining(Property::remove);
+ g.V().properties("name").has(T.value, P.test((a, b) -> ((Class) b).isAssignableFrom(a.getClass()), Integer.class)).forEachRemaining(Property::remove);
tryCommit(graph, graph -> {
assertVertexEdgeCounts(1, 0);
assertEquals(2, IteratorUtils.count(marko.properties("name")));
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/5ae2fd5c/tinkergraph-gremlin/src/test/java/org/apache/tinkerpop/gremlin/tinkergraph/structure/TinkerGraphTest.java
----------------------------------------------------------------------
diff --git a/tinkergraph-gremlin/src/test/java/org/apache/tinkerpop/gremlin/tinkergraph/structure/TinkerGraphTest.java b/tinkergraph-gremlin/src/test/java/org/apache/tinkerpop/gremlin/tinkergraph/structure/TinkerGraphTest.java
index 23ff040..36f108b 100644
--- a/tinkergraph-gremlin/src/test/java/org/apache/tinkerpop/gremlin/tinkergraph/structure/TinkerGraphTest.java
+++ b/tinkergraph-gremlin/src/test/java/org/apache/tinkerpop/gremlin/tinkergraph/structure/TinkerGraphTest.java
@@ -23,6 +23,7 @@ import org.apache.tinkerpop.gremlin.AbstractGremlinTest;
import org.apache.tinkerpop.gremlin.TestHelper;
import org.apache.tinkerpop.gremlin.algorithm.generator.DistributionGenerator;
import org.apache.tinkerpop.gremlin.algorithm.generator.PowerLawDistribution;
+import org.apache.tinkerpop.gremlin.structure.P;
import org.apache.tinkerpop.gremlin.structure.T;
import org.apache.tinkerpop.gremlin.process.traversal.Traversal;
import org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.GraphTraversalSource;
@@ -193,6 +194,13 @@ public class TinkerGraphTest {
t.forEachRemaining(System.out::println);
}
+ @Test
+ @Ignore
+ public void testPlay5() throws Exception {
+ GraphTraversalSource g = TinkerFactory.createModern().traversal();
+ g.V().has("age").values("name").forEachRemaining(System.out::println);
+ }
+
/**
* No assertions. Just write out the graph for convenience.
*/
@@ -475,10 +483,10 @@ public class TinkerGraphTest {
// is used because only "stephen" ages should pass through the pipeline due to the inclusion of the
// key index lookup on "name". If there's an age of something other than 35 in the pipeline being evaluated
// then something is wrong.
- assertEquals(new Long(1), g.traversal().V().has("age", (t, u) -> {
+ assertEquals(new Long(1), g.traversal().V().has("age", P.test((t, u) -> {
assertEquals(35, t);
return true;
- }, 35).has("name", "stephen").count().next());
+ },35)).has("name", "stephen").count().next());
}
@Ignore
@@ -496,16 +504,16 @@ public class TinkerGraphTest {
// is used because only "stephen" ages should pass through the pipeline due to the inclusion of the
// key index lookup on "name". If there's an age of something other than 35 in the pipeline being evaluated
// then something is wrong.
- assertEquals(new Long(2), g.traversal().V().has("age", (t, u) -> {
+ assertEquals(new Long(2), g.traversal().V().has("age", P.test((t, u) -> {
assertEquals(35, t);
return true;
- }, 35).has("name", "stephen").count().next());
+ },35)).has("name", "stephen").count().next());
v.remove();
- assertEquals(new Long(1), g.traversal().V().has("age", (t, u) -> {
+ assertEquals(new Long(1), g.traversal().V().has("age", P.test((t, u) -> {
assertEquals(35, t);
return true;
- }, 35).has("name", "stephen").count().next());
+ },35)).has("name", "stephen").count().next());
}
@Ignore
@@ -519,10 +527,10 @@ public class TinkerGraphTest {
// a tricky way to evaluate if indices are actually being used is to pass a fake BiPredicate to has()
// to get into the Pipeline and evaluate what's going through it. in this case, we know that at index
// is not used because "stephen" and "marko" ages both pass through the pipeline.
- assertEquals(new Long(1), g.traversal().V().has("age", (t, u) -> {
+ assertEquals(new Long(1), g.traversal().V().has("age", P.test((t, u) -> {
assertTrue(t.equals(35) || t.equals(29));
return true;
- }, 35).has("name", "stephen").count().next());
+ }, 35)).has("name", "stephen").count().next());
g.createIndex("name", Vertex.class);
@@ -530,10 +538,10 @@ public class TinkerGraphTest {
// is used because only "stephen" ages should pass through the pipeline due to the inclusion of the
// key index lookup on "name". If there's an age of something other than 35 in the pipeline being evaluated
// then something is wrong.
- assertEquals(new Long(1), g.traversal().V().has("age", (t, u) -> {
+ assertEquals(new Long(1), g.traversal().V().has("age", P.test((t, u) -> {
assertEquals(35, t);
return true;
- }, 35).has("name", "stephen").count().next());
+ }, 35)).has("name", "stephen").count().next());
}
@Ignore
@@ -551,10 +559,10 @@ public class TinkerGraphTest {
// is used because only oid 1 should pass through the pipeline due to the inclusion of the
// key index lookup on "oid". If there's an weight of something other than 0.5f in the pipeline being
// evaluated then something is wrong.
- assertEquals(new Long(1), g.traversal().E().has("weight", (t, u) -> {
+ assertEquals(new Long(1), g.traversal().E().has("weight", P.test((t, u) -> {
assertEquals(0.5f, t);
return true;
- }, 0.5).has("oid", "1").count().next());
+ }, 0.5)).has("oid", "1").count().next());
}
@Ignore
@@ -573,16 +581,16 @@ public class TinkerGraphTest {
// is used because only oid 1 should pass through the pipeline due to the inclusion of the
// key index lookup on "oid". If there's an weight of something other than 0.5f in the pipeline being
// evaluated then something is wrong.
- assertEquals(new Long(2), g.traversal().E().has("weight", (t, u) -> {
+ assertEquals(new Long(2), g.traversal().E().has("weight", P.test((t, u) -> {
assertEquals(0.5f, t);
return true;
- }, 0.5).has("oid", "1").count().next());
+ }, 0.5)).has("oid", "1").count().next());
e.remove();
- assertEquals(new Long(1), g.traversal().E().has("weight", (t, u) -> {
+ assertEquals(new Long(1), g.traversal().E().has("weight", P.test((t, u) -> {
assertEquals(0.5f, t);
return true;
- }, 0.5).has("oid", "1").count().next());
+ }, 0.5)).has("oid", "1").count().next());
}
@Ignore
@@ -597,10 +605,10 @@ public class TinkerGraphTest {
// a tricky way to evaluate if indices are actually being used is to pass a fake BiPredicate to has()
// to get into the Pipeline and evaluate what's going through it. in this case, we know that at index
// is not used because "1" and "2" weights both pass through the pipeline.
- assertEquals(new Long(1), g.traversal().E().has("weight", (t, u) -> {
+ assertEquals(new Long(1), g.traversal().E().has("weight", P.test((t, u) -> {
assertTrue(t.equals(0.5f) || t.equals(0.6f));
return true;
- }, 0.5).has("oid", "1").count().next());
+ }, 0.5)).has("oid", "1").count().next());
g.createIndex("oid", Edge.class);
@@ -608,10 +616,10 @@ public class TinkerGraphTest {
// is used because only oid 1 should pass through the pipeline due to the inclusion of the
// key index lookup on "oid". If there's an weight of something other than 0.5f in the pipeline being
// evaluated then something is wrong.
- assertEquals(new Long(1), g.traversal().E().has("weight", (t, u) -> {
+ assertEquals(new Long(1), g.traversal().E().has("weight", P.test((t, u) -> {
assertEquals(0.5f, t);
return true;
- }, 0.5).has("oid", "1").count().next());
+ }, 0.5)).has("oid", "1").count().next());
}
@Test
[4/8] incubator-tinkerpop git commit: P now has toString(), hashCode(),
and equals() implemented.
Posted by ok...@apache.org.
P now has toString(), hashCode(), and equals() implemented.
Project: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/commit/4be24b61
Tree: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/tree/4be24b61
Diff: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/diff/4be24b61
Branch: refs/heads/master
Commit: 4be24b6109b832c073f0c863c0d6d752d3e15f90
Parents: 1cdcf1f
Author: Marko A. Rodriguez <ok...@gmail.com>
Authored: Fri Apr 24 14:07:41 2015 -0600
Committer: Marko A. Rodriguez <ok...@gmail.com>
Committed: Fri Apr 24 14:07:41 2015 -0600
----------------------------------------------------------------------
.../org/apache/tinkerpop/gremlin/structure/P.java | 18 ++++++++++++++++++
1 file changed, 18 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/4be24b61/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/P.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/P.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/P.java
index 43fcd5a..f0e162e 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/P.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/P.java
@@ -48,10 +48,28 @@ public class P<V> implements Predicate<V>, Serializable {
return this.value;
}
+ @Override
public boolean test(final V testValue) {
return this.biPredicate.test(testValue, this.value);
}
+ @Override
+ public int hashCode() {
+ return this.biPredicate.hashCode() + this.value.hashCode();
+ }
+
+ @Override
+ public boolean equals(final Object other) {
+ return other instanceof P && (
+ (P) other).getBiPredicate().equals(this.biPredicate) &&
+ ((((P) other).getValue() == null && this.getValue() == null) || ((P) other).getValue().equals(this.getValue()));
+ }
+
+ @Override
+ public String toString() {
+ return this.biPredicate.toString() + "(" + this.value + ")";
+ }
+
//////////////// statics
public static <V> P<V> eq(final V value) {
[3/8] incubator-tinkerpop git commit: Merge branch 'master' into
p-predicate-model
Posted by ok...@apache.org.
Merge branch 'master' into p-predicate-model
Project: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/commit/1cdcf1fd
Tree: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/tree/1cdcf1fd
Diff: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/diff/1cdcf1fd
Branch: refs/heads/master
Commit: 1cdcf1fdde0f93dec18c4a7fc9adc8eb68f7ea5b
Parents: d678844 bd182de
Author: Marko A. Rodriguez <ok...@gmail.com>
Authored: Fri Apr 24 14:04:31 2015 -0600
Committer: Marko A. Rodriguez <ok...@gmail.com>
Committed: Fri Apr 24 14:04:31 2015 -0600
----------------------------------------------------------------------
.../gremlin/structure/io/GraphReader.java | 19 ++--
.../gremlin/structure/io/gryo/GryoMapper.java | 6 +-
.../gremlin/structure/io/gryo/GryoWriter.java | 14 +--
.../gremlin/structure/util/star/StarGraph.java | 23 ++---
.../util/star/StarGraphSerializer.java | 17 ++--
.../tinkerpop/gremlin/util/tools/BiMap.java | 92 --------------------
.../io/gryo/GryoRecordReaderWriterTest.java | 1 -
7 files changed, 32 insertions(+), 140 deletions(-)
----------------------------------------------------------------------
[2/8] incubator-tinkerpop git commit: Merge branch 'master' into
p-predicate-model
Posted by ok...@apache.org.
Merge branch 'master' into p-predicate-model
Project: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/commit/d6788440
Tree: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/tree/d6788440
Diff: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/diff/d6788440
Branch: refs/heads/master
Commit: d67884402b30d3c1078b5142a9f14a27eb30f919
Parents: 5ae2fd5 86b78b7
Author: Marko A. Rodriguez <ok...@gmail.com>
Authored: Fri Apr 24 13:40:56 2015 -0600
Committer: Marko A. Rodriguez <ok...@gmail.com>
Committed: Fri Apr 24 13:40:56 2015 -0600
----------------------------------------------------------------------
.../gremlin/structure/io/GraphReader.java | 29 +++++-----
.../structure/io/graphml/GraphMLReader.java | 15 +++---
.../structure/io/graphson/GraphSONReader.java | 31 ++++++-----
.../io/graphson/LegacyGraphSONReader.java | 14 +++--
.../gremlin/structure/io/gryo/GryoReader.java | 44 +++++++++------
.../tinkerpop/gremlin/structure/IoTest.java | 57 ++++++--------------
.../io/graphson/GraphSONRecordReader.java | 2 +-
.../structure/io/gryo/GryoRecordReader.java | 2 +-
8 files changed, 99 insertions(+), 95 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/d6788440/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/IoTest.java
----------------------------------------------------------------------
[5/8] incubator-tinkerpop git commit: organized GraphTraversal steps
with new P work.
Posted by ok...@apache.org.
organized GraphTraversal steps with new P work.
Project: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/commit/83fec556
Tree: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/tree/83fec556
Diff: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/diff/83fec556
Branch: refs/heads/master
Commit: 83fec556549490a665de96a8444fb7a5a674d5d4
Parents: 4be24b6
Author: Marko A. Rodriguez <ok...@gmail.com>
Authored: Fri Apr 24 14:16:17 2015 -0600
Committer: Marko A. Rodriguez <ok...@gmail.com>
Committed: Fri Apr 24 14:16:17 2015 -0600
----------------------------------------------------------------------
.../traversal/dsl/graph/GraphTraversal.java | 26 ++++++++++----------
.../gremlin/process/traversal/dsl/graph/__.java | 20 +++++++--------
2 files changed, 23 insertions(+), 23 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/83fec556/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/graph/GraphTraversal.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/graph/GraphTraversal.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/graph/GraphTraversal.java
index 7547faf..b57baae 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/graph/GraphTraversal.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/graph/GraphTraversal.java
@@ -471,22 +471,18 @@ public interface GraphTraversal<S, E> extends Traversal<S, E> {
return this.asAdmin().addStep(new HasStep(this.asAdmin(), new HasContainer(key, predicate.getBiPredicate(), predicate.getValue())));
}
- public default GraphTraversal<S, E> has(final String key) {
- return this.has(key, P.within());
- }
-
public default GraphTraversal<S, E> has(final String key, final Object value) {
return this.has(key, P.eq(value));
}
- public default GraphTraversal<S, E> has(final T accessor, final Object value) {
- return this.has(accessor.getAccessor(), value);
- }
-
public default GraphTraversal<S, E> has(final T accessor, final P<?> predicate) {
return this.has(accessor.getAccessor(), predicate);
}
+ public default GraphTraversal<S, E> has(final T accessor, final Object value) {
+ return this.has(accessor.getAccessor(), value);
+ }
+
public default GraphTraversal<S, E> has(final String label, final String key, final Object value) {
return this.has(label, key, P.eq(value));
}
@@ -495,24 +491,28 @@ public interface GraphTraversal<S, E> extends Traversal<S, E> {
return this.has(T.label, label).has(key, predicate);
}
+ public default GraphTraversal<S, E> has(final String key) {
+ return this.has(key, P.within());
+ }
+
public default GraphTraversal<S, E> hasNot(final String key) {
return this.has(key, P.without());
}
public default GraphTraversal<S, E> hasLabel(final String... labels) {
- return labels.length == 1 ? this.has(T.label, labels[0]) : this.has(T.label.getAccessor(), P.within(labels));
+ return labels.length == 1 ? this.has(T.label, labels[0]) : this.has(T.label, P.within(labels));
}
public default GraphTraversal<S, E> hasId(final Object... ids) {
- return ids.length == 1 ? this.has(T.id, ids[0]) : this.has(T.id.getAccessor(), P.within(ids));
+ return ids.length == 1 ? this.has(T.id, ids[0]) : this.has(T.id, P.within(ids));
}
public default GraphTraversal<S, E> hasKey(final String... keys) {
- return keys.length == 1 ? this.has(T.key, keys[0]) : this.has(T.key.getAccessor(), P.within(keys));
+ return keys.length == 1 ? this.has(T.key, keys[0]) : this.has(T.key, P.within(keys));
}
public default GraphTraversal<S, E> hasValue(final Object... values) {
- return values.length == 1 ? this.has(T.value, values[0]) : this.has(T.value.getAccessor(), P.within(values));
+ return values.length == 1 ? this.has(T.value, values[0]) : this.has(T.value, P.within(values));
}
public default GraphTraversal<S, E> is(final P<E> predicate) {
@@ -520,7 +520,7 @@ public interface GraphTraversal<S, E> extends Traversal<S, E> {
}
public default GraphTraversal<S, E> is(final Object value) {
- return this.is((P<E>)P.eq(value));
+ return this.is((P<E>) P.eq(value));
}
public default GraphTraversal<S, E> coin(final double probability) {
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/83fec556/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/graph/__.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/graph/__.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/graph/__.java
index f13b313..eb512df 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/graph/__.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/graph/__.java
@@ -318,26 +318,22 @@ public class __ {
return __.<A>start().hasNot(hasNotNextTraversal);
}
- public static <A> GraphTraversal<A, A> has(final String key) {
- return __.<A>start().has(key);
+ public static <A> GraphTraversal<A, A> has(final String key, final P<?> predicate) {
+ return __.<A>start().has(key, predicate);
}
public static <A> GraphTraversal<A, A> has(final String key, final Object value) {
return __.<A>start().has(key, value);
}
- public static <A> GraphTraversal<A, A> has(final T accessor, final Object value) {
- return __.<A>start().has(accessor, value);
- }
-
- public static <A> GraphTraversal<A, A> has(final String key, final P<?> predicate) {
- return __.<A>start().has(key, predicate);
- }
-
public static <A> GraphTraversal<A, A> has(final T accessor, final P<?> predicate) {
return __.<A>start().has(accessor, predicate);
}
+ public static <A> GraphTraversal<A, A> has(final T accessor, final Object value) {
+ return __.<A>start().has(accessor, value);
+ }
+
public static <A> GraphTraversal<A, A> has(final String label, final String key, final Object value) {
return __.<A>start().has(label, key, value);
}
@@ -346,6 +342,10 @@ public class __ {
return __.<A>start().has(label, key, predicate);
}
+ public static <A> GraphTraversal<A, A> has(final String key) {
+ return __.<A>start().has(key);
+ }
+
public static <A> GraphTraversal<A, A> hasNot(final String key) {
return __.<A>start().hasNot(key);
}
[8/8] incubator-tinkerpop git commit: merged master/ and fixed
GroovyTests around where(a, neq(b)).
Posted by ok...@apache.org.
merged master/ and fixed GroovyTests around where(a,neq(b)).
Project: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/commit/aebc644c
Tree: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/tree/aebc644c
Diff: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/diff/aebc644c
Branch: refs/heads/master
Commit: aebc644cd4cf3c0d40f76ce05cfe480dd26c97a3
Parents: bdd29e9
Author: Marko A. Rodriguez <ok...@gmail.com>
Authored: Fri Apr 24 14:49:14 2015 -0600
Committer: Marko A. Rodriguez <ok...@gmail.com>
Committed: Fri Apr 24 14:49:14 2015 -0600
----------------------------------------------------------------------
.../process/traversal/step/filter/GroovyWhereTest.groovy | 10 +++++-----
.../process/traversal/step/map/GroovyMatchTest.groovy | 4 ++--
.../gremlin/process/traversal/step/filter/WhereTest.java | 2 +-
3 files changed, 8 insertions(+), 8 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/aebc644c/gremlin-groovy-test/src/main/groovy/org/apache/tinkerpop/gremlin/process/traversal/step/filter/GroovyWhereTest.groovy
----------------------------------------------------------------------
diff --git a/gremlin-groovy-test/src/main/groovy/org/apache/tinkerpop/gremlin/process/traversal/step/filter/GroovyWhereTest.groovy b/gremlin-groovy-test/src/main/groovy/org/apache/tinkerpop/gremlin/process/traversal/step/filter/GroovyWhereTest.groovy
index b248f40..e7a4caa 100644
--- a/gremlin-groovy-test/src/main/groovy/org/apache/tinkerpop/gremlin/process/traversal/step/filter/GroovyWhereTest.groovy
+++ b/gremlin-groovy-test/src/main/groovy/org/apache/tinkerpop/gremlin/process/traversal/step/filter/GroovyWhereTest.groovy
@@ -22,7 +22,7 @@ import org.apache.tinkerpop.gremlin.process.traversal.Traversal
import org.apache.tinkerpop.gremlin.process.computer.ComputerTestHelper
import org.apache.tinkerpop.gremlin.process.traversal.TraversalEngine
import org.apache.tinkerpop.gremlin.process.UseEngine
-import org.apache.tinkerpop.gremlin.structure.Compare
+import static org.apache.tinkerpop.gremlin.structure.P.*;
import org.apache.tinkerpop.gremlin.structure.Vertex
import org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.__
@@ -37,12 +37,12 @@ public abstract class GroovyWhereTest {
public static class StandardTraversals extends WhereTest {
@Override
public Traversal<Vertex, Map<String, Object>> get_g_V_hasXageX_asXaX_out_in_hasXageX_asXbX_select_whereXa_eq_bX() {
- g.V.has('age').as('a').out.in.has('age').as('b').select().where('a', Compare.eq, 'b');
+ g.V.has('age').as('a').out.in.has('age').as('b').select().where('a', eq('b'));
}
@Override
public Traversal<Vertex, Map<String, Object>> get_g_V_hasXageX_asXaX_out_in_hasXageX_asXbX_select_whereXa_neq_bX() {
- g.V.has('age').as('a').out.in.has('age').as('b').select().where('a',Compare.neq, 'b');
+ g.V.has('age').as('a').out.in.has('age').as('b').select().where('a',neq('b'));
}
@Override
@@ -60,12 +60,12 @@ public abstract class GroovyWhereTest {
public static class ComputerTraversals extends WhereTest {
@Override
public Traversal<Vertex, Map<String, Object>> get_g_V_hasXageX_asXaX_out_in_hasXageX_asXbX_select_whereXa_eq_bX() {
- ComputerTestHelper.compute("g.V.has('age').as('a').out.in.has('age').as('b').select().where('a', Compare.eq, 'b')", g);
+ ComputerTestHelper.compute("g.V.has('age').as('a').out.in.has('age').as('b').select().where('a', eq('b'))", g);
}
@Override
public Traversal<Vertex, Map<String, Object>> get_g_V_hasXageX_asXaX_out_in_hasXageX_asXbX_select_whereXa_neq_bX() {
- ComputerTestHelper.compute("g.V.has('age').as('a').out.in.has('age').as('b').select().where('a', Compare.neq, 'b')", g);
+ ComputerTestHelper.compute("g.V.has('age').as('a').out.in.has('age').as('b').select().where('a', neq('b'))", g);
}
@Override
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/aebc644c/gremlin-groovy-test/src/main/groovy/org/apache/tinkerpop/gremlin/process/traversal/step/map/GroovyMatchTest.groovy
----------------------------------------------------------------------
diff --git a/gremlin-groovy-test/src/main/groovy/org/apache/tinkerpop/gremlin/process/traversal/step/map/GroovyMatchTest.groovy b/gremlin-groovy-test/src/main/groovy/org/apache/tinkerpop/gremlin/process/traversal/step/map/GroovyMatchTest.groovy
index e0c9c98..aae6f26 100644
--- a/gremlin-groovy-test/src/main/groovy/org/apache/tinkerpop/gremlin/process/traversal/step/map/GroovyMatchTest.groovy
+++ b/gremlin-groovy-test/src/main/groovy/org/apache/tinkerpop/gremlin/process/traversal/step/map/GroovyMatchTest.groovy
@@ -22,7 +22,7 @@ import org.apache.tinkerpop.gremlin.structure.T
import org.apache.tinkerpop.gremlin.process.traversal.Traversal
import org.apache.tinkerpop.gremlin.process.traversal.TraversalEngine
import org.apache.tinkerpop.gremlin.process.UseEngine
-import org.apache.tinkerpop.gremlin.structure.Compare
+import static org.apache.tinkerpop.gremlin.structure.P.*;
import org.apache.tinkerpop.gremlin.structure.Vertex
import org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.__
/**
@@ -164,7 +164,7 @@ public abstract class GroovyMatchTest {
g.V().match('a',
__.as('a').out('created').as('b'),
__.as('b').in('created').as('c'))
- .where('a', Compare.neq, 'c')
+ .where('a', neq('c'))
.select('a', 'c').by('name')
}
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/aebc644c/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 0b5ffef..112626d 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
@@ -145,7 +145,7 @@ public abstract class WhereTest extends AbstractGremlinProcessTest {
@Override
public Traversal<Vertex, Map<String, Object>> get_g_V_hasXageX_asXaX_out_in_hasXageX_asXbX_select_whereXa_neq_bX() {
- return g.V().has("age").as("a").out().in().has("age").as("b").select().where("a", eq("b"));
+ return g.V().has("age").as("a").out().in().has("age").as("b").select().where("a", neq("b"));
}
@Override
[7/8] incubator-tinkerpop git commit: Merge branch 'master' into
p-predicate-model
Posted by ok...@apache.org.
Merge branch 'master' into p-predicate-model
Project: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/commit/bdd29e96
Tree: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/tree/bdd29e96
Diff: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/diff/bdd29e96
Branch: refs/heads/master
Commit: bdd29e965b8e72e7b97cfd4f8fbb3e0cfcd77b69
Parents: eb78cfd 594dc82
Author: Marko A. Rodriguez <ok...@gmail.com>
Authored: Fri Apr 24 14:38:12 2015 -0600
Committer: Marko A. Rodriguez <ok...@gmail.com>
Committed: Fri Apr 24 14:38:12 2015 -0600
----------------------------------------------------------------------
data/grateful-dead-vertices.kryo | Bin 391510 -> 335733 bytes
data/grateful-dead-vertices.ldjson | 422 +++++++++----------
data/grateful-dead.kryo | Bin 391510 -> 332385 bytes
data/tinkerpop-classic-vertices.kryo | Bin 1129 -> 729 bytes
data/tinkerpop-classic.kryo | Bin 1129 -> 729 bytes
data/tinkerpop-crew-vertices.kryo | Bin 1949 -> 1386 bytes
data/tinkerpop-crew.kryo | Bin 1949 -> 1386 bytes
data/tinkerpop-modern-vertices.kryo | Bin 1181 -> 781 bytes
data/tinkerpop-modern.kryo | Bin 1181 -> 781 bytes
.../gremlin/structure/util/star/StarGraph.java | 2 +-
gremlin-server/data/sample.kryo | Bin 2817115 -> 2416891 bytes
.../io/gryo/grateful-dead-vertices.kryo | Bin 391510 -> 335733 bytes
.../structure/io/gryo/grateful-dead.kryo | Bin 391510 -> 332385 bytes
.../io/gryo/tinkerpop-classic-vertices.kryo | Bin 1129 -> 729 bytes
.../structure/io/gryo/tinkerpop-classic.kryo | Bin 1129 -> 729 bytes
.../io/gryo/tinkerpop-crew-vertices.kryo | Bin 1949 -> 1386 bytes
.../structure/io/gryo/tinkerpop-crew.kryo | Bin 1949 -> 1386 bytes
.../io/gryo/tinkerpop-modern-vertices.kryo | Bin 1181 -> 781 bytes
.../structure/io/gryo/tinkerpop-modern.kryo | Bin 1181 -> 781 bytes
19 files changed, 212 insertions(+), 212 deletions(-)
----------------------------------------------------------------------
[6/8] incubator-tinkerpop git commit: where(a,neq(b))
Posted by ok...@apache.org.
where(a,neq(b))
Project: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/commit/eb78cfde
Tree: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/tree/eb78cfde
Diff: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/diff/eb78cfde
Branch: refs/heads/master
Commit: eb78cfdef00dca5cbdbd9c651e1d926148f1233a
Parents: 83fec55
Author: Marko A. Rodriguez <ok...@gmail.com>
Authored: Fri Apr 24 14:37:56 2015 -0600
Committer: Marko A. Rodriguez <ok...@gmail.com>
Committed: Fri Apr 24 14:37:56 2015 -0600
----------------------------------------------------------------------
docs/src/the-traversal.asciidoc | 28 ++++++++++----------
.../traversal/dsl/graph/GraphTraversal.java | 8 ++----
.../gremlin/process/traversal/dsl/graph/__.java | 8 ++----
.../traversal/step/filter/WhereStep.java | 11 ++++----
.../traversal/step/filter/WhereTest.java | 6 ++---
.../process/traversal/step/map/MatchTest.java | 4 +--
6 files changed, 29 insertions(+), 36 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/eb78cfde/docs/src/the-traversal.asciidoc
----------------------------------------------------------------------
diff --git a/docs/src/the-traversal.asciidoc b/docs/src/the-traversal.asciidoc
index 270d4dd..0a0d60b 100644
--- a/docs/src/the-traversal.asciidoc
+++ b/docs/src/the-traversal.asciidoc
@@ -313,7 +313,7 @@ The `choose()`-step (*branch*) routes the current traverser to a particular trav
[gremlin-groovy,modern]
----
g.V().hasLabel('person').
- choose(values('age').is(lte, 30),
+ choose(values('age').is(lte(30)),
__.in(),
__.out()).values('name') <1>
g.V().hasLabel('person').
@@ -519,7 +519,7 @@ image::has-step.png[width=670]
It is possible to filter vertices, edges, and vertex properties based on their properties using `has()`-step (*filter*). There are numerous variations on `has()` including:
* `has(key,value)`: Remove the traverser if its element does not have the provided key/value property.
- * `has(key,bi-predicate,object)`: Remove the traverser if its element does not have a key value that satisfies the bi-predicate.
+ * `has(key,predicate)`: Remove the traverser if its element does not have a key value that satisfies the bi-predicate.
* `hasLabel(labels...)`: Remove the traverser if its element does not have any of the labels.
* `hasId(ids...)`: Remove the traverser if its element does not have any of the ids.
* `hasKey(keys...)`: Remove the traverser if its property does not have any of the keys.
@@ -531,11 +531,11 @@ It is possible to filter vertices, edges, and vertex properties based on their p
[gremlin-groovy,modern]
----
g.V().hasLabel('person')
-g.V().hasLabel('person').out().has('name',within,['vadas','josh'])
+g.V().hasLabel('person').out().has('name',within('vadas','josh'))
g.V().hasLabel('person').out().has('name',within,['vadas','josh']).
outE().hasLabel('created')
-g.V().has('age',inside,[20,30]).values('age') <1>
-g.V().has('age',outside,[20,30]).values('age') <2>
+g.V().has('age',inside(20,30)).values('age') <1>
+g.V().has('age',outside(20,30)).values('age') <2>
----
<1> Find all vertices whose ages are between 20 (inclusive) and 30 (exclusive).
@@ -547,7 +547,7 @@ It is also possible to filter any arbitrary object based on a anonymous traversa
----
g.V().has(out('created')).values('name') <1>
g.V().out('knows').has(out('created')).values('name') <2>
-g.V().has(out('created').count().is(gte, 2L)).values('name') <3>
+g.V().has(out('created').count().is(gte(2L))).values('name') <3>
g.V().has(out('knows').has(out('created'))).values('name') <4>
----
@@ -591,12 +591,12 @@ It is possible to filter scalar values using `is()`-step (*filter*).
[gremlin-groovy,modern]
----
g.V().values('age').is(32)
-g.V().values('age').is(lte, 30)
-g.V().values('age').is(inside, [30, 40])
+g.V().values('age').is(lte(30))
+g.V().values('age').is(inside(30, 40))
g.V().has(__.in('created').count().is(1l)).values('name') <1>
-g.V().has(__.in('created').count().is(gte, 2l)).values('name') <2>
+g.V().has(__.in('created').count().is(gte(2l))).values('name') <2>
g.V().has(__.in('created').values('age').
- mean().is(inside, [30d, 35d])).values('name') <3>
+ mean().is(inside(30d, 35d))).values('name') <3>
----
<1> Find projects having exactly one contributor.
@@ -741,7 +741,7 @@ Match is typically used in conjunction with both `select()` (demonstrated previo
g.V().match('a',
__.as('a').out('created').as('b'),
__.as('b').in('created').as('c')).
- where('a', neq, 'c').select('a','c').by('name')
+ where('a', neq('c')).select('a','c').by('name')
----
The `where()`-step can take either a `BiPredicate` (first example below) or a `Traversal` (second example below). Using `MatchWhereStrategy`, `where()`-clauses can be automatically folded into `match()` and thus, subject to `match()`-steps budget-match algorithm.
@@ -820,7 +820,7 @@ The `or()`-step ensures that at least one of the provided traversals yield a res
----
g.V().or(
__.outE('created'),
- __.inE('created').count().is(gt,1l)).
+ __.inE('created').count().is(gt(1l))).
values('name')
----
@@ -1181,10 +1181,10 @@ Finally, like <<match-step,`match()`>>-step, it is possible to use `where()`, as
----
g.V().as('a').out('created').in('created').as('b').select().by('name') <1>
g.V().as('a').out('created').in('created').as('b').
- select().by('name').where('a',neq,'b') <2>
+ select().by('name').where('a',neq('b')) <2>
g.V().as('a').out('created').in('created').as('b').
select(). <3>
- where('a',neq,'b').
+ where('a',neq('b')).
where(__.as('a').out('knows').as('b')).
select().by('name')
----
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/eb78cfde/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/graph/GraphTraversal.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/graph/GraphTraversal.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/graph/GraphTraversal.java
index b57baae..0f7204c 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/graph/GraphTraversal.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/graph/GraphTraversal.java
@@ -447,12 +447,8 @@ public interface GraphTraversal<S, E> extends Traversal<S, E> {
return this.asAdmin().addStep(new ExceptStep<>(this.asAdmin(), exceptCollection));
}
- public default <E2> GraphTraversal<S, Map<String, E2>> where(final String firstKey, final String secondKey, final BiPredicate predicate) {
- return this.asAdmin().addStep(new WhereStep(this.asAdmin(), firstKey, secondKey, predicate));
- }
-
- public default <E2> GraphTraversal<S, Map<String, E2>> where(final String firstKey, final BiPredicate predicate, final String secondKey) {
- return this.where(firstKey, secondKey, predicate);
+ public default <E2> GraphTraversal<S, Map<String, E2>> where(final String firstKey, final P<?> predicate) {
+ return this.asAdmin().addStep(new WhereStep<>(this.asAdmin(), firstKey, predicate));
}
public default <E2> GraphTraversal<S, Map<String, E2>> where(final Traversal constraint) {
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/eb78cfde/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/graph/__.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/graph/__.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/graph/__.java
index eb512df..c869d48 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/graph/__.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/graph/__.java
@@ -366,12 +366,8 @@ public class __ {
return __.<A>start().hasValue(values);
}
- public static <A, E2> GraphTraversal<A, Map<String, E2>> where(final String firstKey, final String secondKey, final BiPredicate predicate) {
- return __.<A>start().where(firstKey, secondKey, predicate);
- }
-
- public static <A, E2> GraphTraversal<A, Map<String, E2>> where(final String firstKey, final BiPredicate predicate, final String secondKey) {
- return __.<A>start().where(firstKey, predicate, secondKey);
+ public static <A, E2> GraphTraversal<A, Map<String, E2>> where(final String firstKey, final P<?> secondKeyPredicate) {
+ return __.<A>start().where(firstKey, secondKeyPredicate);
}
public static <A, E2> GraphTraversal<A, Map<String, E2>> where(final Traversal constraint) {
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/eb78cfde/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 14c541a..8414001 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
@@ -21,10 +21,11 @@ package org.apache.tinkerpop.gremlin.process.traversal.step.filter;
import org.apache.tinkerpop.gremlin.process.traversal.Step;
import org.apache.tinkerpop.gremlin.process.traversal.Traversal;
import org.apache.tinkerpop.gremlin.process.traversal.Traverser;
-import org.apache.tinkerpop.gremlin.process.traversal.step.util.MarkerIdentityStep;
import org.apache.tinkerpop.gremlin.process.traversal.step.TraversalParent;
-import org.apache.tinkerpop.gremlin.process.traversal.util.TraversalHelper;
+import org.apache.tinkerpop.gremlin.process.traversal.step.util.MarkerIdentityStep;
import org.apache.tinkerpop.gremlin.process.traversal.traverser.TraverserRequirement;
+import org.apache.tinkerpop.gremlin.process.traversal.util.TraversalHelper;
+import org.apache.tinkerpop.gremlin.structure.P;
import java.util.Collections;
import java.util.List;
@@ -43,11 +44,11 @@ public final class WhereStep<E> extends FilterStep<Map<String, E>> implements Tr
private Traversal.Admin constraint;
- public WhereStep(final Traversal.Admin traversal, final String firstKey, final String secondKey, final BiPredicate<E, E> biPredicate) {
+ public WhereStep(final Traversal.Admin traversal, final String firstKey, final P<?> secondKeyPredicate) {
super(traversal);
this.firstKey = firstKey;
- this.secondKey = secondKey;
- this.biPredicate = biPredicate;
+ this.secondKey = (String) secondKeyPredicate.getValue();
+ this.biPredicate = secondKeyPredicate.getBiPredicate();
this.constraint = null;
}
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/eb78cfde/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 da75411..0b5ffef 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
@@ -24,7 +24,7 @@ import org.apache.tinkerpop.gremlin.process.IgnoreEngine;
import org.apache.tinkerpop.gremlin.process.traversal.Traversal;
import org.apache.tinkerpop.gremlin.process.traversal.TraversalEngine;
import org.apache.tinkerpop.gremlin.process.UseEngine;
-import org.apache.tinkerpop.gremlin.structure.Compare;
+import static org.apache.tinkerpop.gremlin.structure.P.*;
import org.apache.tinkerpop.gremlin.structure.Vertex;
import org.junit.Test;
@@ -140,12 +140,12 @@ public abstract class WhereTest extends AbstractGremlinProcessTest {
@Override
public Traversal<Vertex, Map<String, Object>> get_g_V_hasXageX_asXaX_out_in_hasXageX_asXbX_select_whereXa_eq_bX() {
- return g.V().has("age").as("a").out().in().has("age").as("b").select().where("a", Compare.eq, "b");
+ return g.V().has("age").as("a").out().in().has("age").as("b").select().where("a", eq("b"));
}
@Override
public Traversal<Vertex, Map<String, Object>> get_g_V_hasXageX_asXaX_out_in_hasXageX_asXbX_select_whereXa_neq_bX() {
- return g.V().has("age").as("a").out().in().has("age").as("b").select().where("a", Compare.neq, "b");
+ return g.V().has("age").as("a").out().in().has("age").as("b").select().where("a", eq("b"));
}
@Override
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/eb78cfde/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/MatchTest.java
----------------------------------------------------------------------
diff --git a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/MatchTest.java b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/MatchTest.java
index 3be7759..4393a8e 100644
--- a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/MatchTest.java
+++ b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/MatchTest.java
@@ -34,7 +34,7 @@ import org.apache.tinkerpop.gremlin.process.traversal.step.map.match.IteratorEnu
import org.apache.tinkerpop.gremlin.process.traversal.step.map.match.MatchStep;
import org.apache.tinkerpop.gremlin.process.traversal.traverser.B_O_S_SE_SL_Traverser;
import org.apache.tinkerpop.gremlin.process.traversal.step.util.MapHelper;
-import org.apache.tinkerpop.gremlin.structure.Compare;
+import static org.apache.tinkerpop.gremlin.structure.P.*;
import org.apache.tinkerpop.gremlin.structure.Vertex;
import org.junit.Test;
@@ -780,7 +780,7 @@ public abstract class MatchTest extends AbstractGremlinProcessTest {
return g.V().match("a",
as("a").out("created").as("b"),
as("b").in("created").as("c"))
- .where("a", Compare.neq, "c")
+ .where("a", neq("c"))
.<String>select("a", "c").by("name");
}