OrderedTraverser needs a equals() and hashCode().
Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/61f73b2e Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/61f73b2e Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/61f73b2e Branch: refs/heads/TINKERPOP-1564 Commit: 61f73b2ebff153c0ef1d70205aab110aa7fe136a Parents: 2cd936a Author: Marko A. Rodriguez <okramma...@gmail.com> Authored: Wed Jan 18 07:46:54 2017 -0700 Committer: Marko A. Rodriguez <okramma...@gmail.com> Committed: Thu Jan 19 13:01:41 2017 -0700 ---------------------------------------------------------------------- .../traversal/traverser/util/OrderedTraverser.java | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/61f73b2e/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/traverser/util/OrderedTraverser.java ---------------------------------------------------------------------- diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/traverser/util/OrderedTraverser.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/traverser/util/OrderedTraverser.java index b85a18b..92c6256 100644 --- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/traverser/util/OrderedTraverser.java +++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/traverser/util/OrderedTraverser.java @@ -178,7 +178,17 @@ public final class OrderedTraverser<T> implements Traverser.Admin<T> { } @Override - public Traverser<T> clone() { + public int hashCode() { + return this.internal.hashCode(); + } + + @Override + public boolean equals(final Object object) { + return object instanceof OrderedTraverser && ((OrderedTraverser) object).internal.equals(this.internal); + } + + @Override + public OrderedTraverser<T> clone() { try { final OrderedTraverser<T> clone = (OrderedTraverser<T>) super.clone(); clone.internal = (Traverser.Admin<T>) this.internal.clone();