diff --git a/CHANGELOG.md b/CHANGELOG.md index 8cc09b67ca894957d51aa2b0412d61b7e223d049..6832aeb16df1a8af168f58cece931a16d6178316 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,8 +3,7 @@ ## 2.1.0 * Fixed a bug where an exception was thrown when using the @Adjacency annotation on outgoing adjacencies for add*, set*, and remove*. -* Added the ability to use as and back gremline pipe methods with named marks. -* Added hasType to the gremlin pipeline. +* Added has and hasNot keyed to type to the gremlin pipeline. * Switched over to using the Syncleus parent POM. * renamed the pipeline map method to propertyMap to reflect the TP3 interfaces. diff --git a/src/main/java/com/syncleus/ferma/traversals/AbstractEdgeTraversal.java b/src/main/java/com/syncleus/ferma/traversals/AbstractEdgeTraversal.java index 20fbb4a9cd155ad04ff21d79ecb3da36fb94d9e9..75d19cbedff6287de0d99af8a38e1d5909ceb45c 100644 --- a/src/main/java/com/syncleus/ferma/traversals/AbstractEdgeTraversal.java +++ b/src/main/java/com/syncleus/ferma/traversals/AbstractEdgeTraversal.java @@ -223,8 +223,8 @@ abstract class AbstractEdgeTraversal<C, S, M> extends AbstractTraversal<EdgeFram } @Override - public EdgeTraversal<C, S, ? extends EdgeTraversal<C, S, M>> as(final String name) { - return (EdgeTraversal<C, S, ? extends EdgeTraversal<C, S, M>>) super.as(name); + public EdgeTraversal<?, ?, M> as(final String name) { + return (EdgeTraversal) super.as(name); } @Override diff --git a/src/main/java/com/syncleus/ferma/traversals/AbstractTraversal.java b/src/main/java/com/syncleus/ferma/traversals/AbstractTraversal.java index 719ed89b588fdb0ff693923bf0bb724bc3905bbd..fa34972e2199556c3a02f767a711ee7b30cf3937 100644 --- a/src/main/java/com/syncleus/ferma/traversals/AbstractTraversal.java +++ b/src/main/java/com/syncleus/ferma/traversals/AbstractTraversal.java @@ -112,9 +112,9 @@ abstract class AbstractTraversal<T, C, S, M> implements Traversal<T, C, S, M> { } @Override - public Traversal<T, C, S, ? extends Traversal<T, C, S, M>> as(final String name) { + public Traversal<T, ?, ?, M> as(final String name) { getPipeline().as(name); - return (Traversal<T, C, S, ? extends Traversal<T, C, S, M>>) this; + return this; } @Override @@ -726,12 +726,6 @@ abstract class AbstractTraversal<T, C, S, M> implements Traversal<T, C, S, M> { return (M) mark.traversal; } - @Override - public M back(final String name) { - getPipeline().back(name); - return (M) this; - } - @Override public M optional() { final MarkId mark = popMark(); diff --git a/src/main/java/com/syncleus/ferma/traversals/AbstractVertexTraversal.java b/src/main/java/com/syncleus/ferma/traversals/AbstractVertexTraversal.java index a92cf7edadec89db7635de9f9c8ef8f42791bc8b..933ea36718061dce898dc61643998aa054834eab 100644 --- a/src/main/java/com/syncleus/ferma/traversals/AbstractVertexTraversal.java +++ b/src/main/java/com/syncleus/ferma/traversals/AbstractVertexTraversal.java @@ -575,8 +575,8 @@ abstract class AbstractVertexTraversal<C, S, M> extends AbstractTraversal<Vertex } @Override - public VertexTraversal<C, S, ? extends VertexTraversal<C, S, M>> as(final String name) { - return (VertexTraversal<C, S, ? extends VertexTraversal<C, S, M>>) super.as(name); + public VertexTraversal<?, ?, M> as(final String name) { + return (VertexTraversal<?, ?, M>) super.as(name); } @Override diff --git a/src/main/java/com/syncleus/ferma/traversals/EdgeTraversal.java b/src/main/java/com/syncleus/ferma/traversals/EdgeTraversal.java index ee8d65a1d731004836510cf6fb8bb43c92c076c1..bafcfd7a756f4ad500bf58d738ddf7c84e47644b 100644 --- a/src/main/java/com/syncleus/ferma/traversals/EdgeTraversal.java +++ b/src/main/java/com/syncleus/ferma/traversals/EdgeTraversal.java @@ -469,7 +469,7 @@ public interface EdgeTraversal<C, S, M> extends Traversal<EdgeFrame, C, S, M> { EdgeTraversal<?, ?, M> order(Comparator<? super EdgeFrame> compareFunction); @Override - EdgeTraversal<C, S, ? extends EdgeTraversal<C, S, M>> as(String name); + EdgeTraversal<?, ?, M> as(String name); @Override EdgeTraversal<?, ?, M> simplePath(); diff --git a/src/main/java/com/syncleus/ferma/traversals/GlobalVertexTraversal.java b/src/main/java/com/syncleus/ferma/traversals/GlobalVertexTraversal.java index 4ddf20b1c5d46d664e36fda86f809022ebbd48d5..aa1ae6957808a8e7a85a078e6edf161362fd7232 100644 --- a/src/main/java/com/syncleus/ferma/traversals/GlobalVertexTraversal.java +++ b/src/main/java/com/syncleus/ferma/traversals/GlobalVertexTraversal.java @@ -655,7 +655,7 @@ public class GlobalVertexTraversal<C, S, M> implements VertexTraversal<C, S, M> } @Override - public VertexTraversal<C, S, ? extends VertexTraversal<C, S, M>> as(final String name) { + public VertexTraversal<?, ?, M> as(final String name) { return this.simpleDelegate().as(name); } @@ -774,11 +774,6 @@ public class GlobalVertexTraversal<C, S, M> implements VertexTraversal<C, S, M> return this.simpleDelegate().back(); } - @Override - public M back(final String name) { - return this.simpleDelegate().back(name); - } - @Override public Traversal<Path, ?, ?, M> path(final TraversalFunction<?, ?>... pathFunctions) { return this.simpleDelegate().path(pathFunctions); diff --git a/src/main/java/com/syncleus/ferma/traversals/Traversal.java b/src/main/java/com/syncleus/ferma/traversals/Traversal.java index 6399df0b4652f13bd10881b47c0dcc11911c7732..017fd5bf23fe194d47a22bcb18bd2d906326c4eb 100644 --- a/src/main/java/com/syncleus/ferma/traversals/Traversal.java +++ b/src/main/java/com/syncleus/ferma/traversals/Traversal.java @@ -632,7 +632,7 @@ public interface Traversal<T, C, S, M> extends Iterator<T>, Iterable<T> { * the name of the AsPipe * @return the extended Pipeline */ - Traversal<T, C, S, ? extends Traversal<T, C, S, M>> as(String name); + Traversal<T, ?, ?, M> as(String name); /** * If the object's path is repeating (looping), then the object is filtered. @@ -643,13 +643,6 @@ public interface Traversal<T, C, S, M> extends Iterator<T>, Iterable<T> { */ Traversal<T, ?, ?, M> simplePath(); - /** - * The object that was marked with the specific name is emitted. - * - * @return the extended Pipeline - */ - M back(String name); - /** * The object that was seen at the topmost marked step is emitted. The mark step is removed from the stack. * diff --git a/src/main/java/com/syncleus/ferma/traversals/VertexTraversal.java b/src/main/java/com/syncleus/ferma/traversals/VertexTraversal.java index a2fe22d564b89d2890da64c8c7ace932b1b9a0a1..03e36a8c3229ef7b24608fabeb35abea2eb5dc82 100644 --- a/src/main/java/com/syncleus/ferma/traversals/VertexTraversal.java +++ b/src/main/java/com/syncleus/ferma/traversals/VertexTraversal.java @@ -762,7 +762,7 @@ public interface VertexTraversal<C, S, M> extends Traversal<VertexFrame, C, S, M VertexTraversal<?, ?, M> order(Tokens.T order); @Override - VertexTraversal<C, S, ? extends VertexTraversal<C, S, M>> as(String name); + VertexTraversal<?, ?, M> as(String name); @Override VertexTraversal<?, ?, M> simplePath(); diff --git a/src/test/java/com/syncleus/ferma/TraversalsTest.java b/src/test/java/com/syncleus/ferma/TraversalsTest.java index ad13e6d0d620bfbb93ef292933c711f066a5383b..ab49edb2dd912a1075a4ae132e443787a9e392b1 100644 --- a/src/test/java/com/syncleus/ferma/TraversalsTest.java +++ b/src/test/java/com/syncleus/ferma/TraversalsTest.java @@ -88,12 +88,6 @@ public class TraversalsTest { Assert.assertEquals(29, graph.v().mark().outE("knows").inV().has("age", T.gt, 30).back().property("age").next()); } - @Test - public void testMarkBackNamed() { - - Assert.assertEquals(29, graph.v().as("someName").outE("knows").inV().has("age", T.gt, 30).back("someName").property("age").next()); - } - @Test public void testMarkOptional() { final List<VertexFrame> aggregate = new ArrayList<>();