You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tinkerpop.apache.org by sp...@apache.org on 2015/04/24 17:46:08 UTC
[22/31] incubator-tinkerpop git commit: Refactored Attachable
interface as the Host is now given to the Method directly.
Refactored Attachable interface as the Host is now given to the Method directly.
Project: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/commit/597a8bac
Tree: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/tree/597a8bac
Diff: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/diff/597a8bac
Branch: refs/heads/master
Commit: 597a8baca0273d0bb60a8c71747e09d395454bac
Parents: a2a73dc
Author: Stephen Mallette <sp...@genoprime.com>
Authored: Fri Apr 24 10:25:31 2015 -0400
Committer: Stephen Mallette <sp...@genoprime.com>
Committed: Fri Apr 24 10:25:31 2015 -0400
----------------------------------------------------------------------
.../computer/traversal/TraverserExecutor.java | 2 +-
.../traversal/step/map/ComputerResultStep.java | 2 +-
.../gremlin/process/traversal/Traverser.java | 16 ++--------------
.../traverser/B_O_P_S_SE_SL_Traverser.java | 4 ++--
.../traverser/util/AbstractTraverser.java | 4 ++--
.../traverser/util/EmptyTraverser.java | 2 +-
.../gremlin/structure/io/gryo/GryoReader.java | 4 ++--
.../gremlin/structure/util/Attachable.java | 8 ++------
.../structure/util/detached/DetachedPath.java | 11 ++---------
.../structure/util/reference/ReferencePath.java | 11 ++---------
.../util/detached/DetachedEdgeTest.java | 4 ++--
.../util/detached/DetachedPropertyTest.java | 4 ++--
.../detached/DetachedVertexPropertyTest.java | 4 ++--
.../util/detached/DetachedVertexTest.java | 6 +++---
.../util/reference/ReferenceEdgeTest.java | 4 ++--
.../reference/ReferenceVertexPropertyTest.java | 4 ++--
.../util/reference/ReferenceVertexTest.java | 4 ++--
.../structure/util/star/StarGraphTest.java | 20 ++++++++++----------
.../process/computer/spark/SparkExecutor.java | 4 ++--
.../io/graphson/GraphSONRecordReader.java | 4 ++--
.../structure/io/gryo/GryoRecordReader.java | 4 ++--
21 files changed, 48 insertions(+), 78 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/597a8bac/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/computer/traversal/TraverserExecutor.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/computer/traversal/TraverserExecutor.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/computer/traversal/TraverserExecutor.java
index 6a1e69d..aa8511c 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/computer/traversal/TraverserExecutor.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/computer/traversal/TraverserExecutor.java
@@ -51,7 +51,7 @@ public final class TraverserExecutor {
messenger.receiveMessages().forEachRemaining(traverserSet -> {
traverserSet.forEach(traverser -> {
traverser.setSideEffects(traversalSideEffects);
- traverser.attach(vertex, Attachable.Method::get);
+ traverser.attach(Attachable.Method.get(vertex));
aliveTraversers.add((Traverser.Admin) traverser);
});
});
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/597a8bac/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/computer/traversal/step/map/ComputerResultStep.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/computer/traversal/step/map/ComputerResultStep.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/computer/traversal/step/map/ComputerResultStep.java
index 905ea72..80e8364 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/computer/traversal/step/map/ComputerResultStep.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/computer/traversal/step/map/ComputerResultStep.java
@@ -85,7 +85,7 @@ public final class ComputerResultStep<S> extends AbstractStep<S, S> {
final Traverser.Admin<S> traverser = this.traversers.next();
if (this.attachElements && (traverser.get() instanceof Attachable))
- traverser.set((S) ((Attachable<Element>) traverser.get()).attach(this.graph, Attachable.Method::get));
+ traverser.set((S) ((Attachable<Element>) traverser.get()).attach(Attachable.Method.get(graph)));
return traverser;
}
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/597a8bac/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/Traverser.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/Traverser.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/Traverser.java
index 91ea128..408aa82 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/Traverser.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/Traverser.java
@@ -248,23 +248,11 @@ public interface Traverser<T> extends Serializable, Comparable<Traverser<T>>, Cl
/**
* Regenerate the detached traverser given its location at a particular vertex.
*
- * @param hostVertex The vertex that is hosting the traverser
+ * @param method The method by which to attach a {@code Traverser} to an vertex.
* @return The inflated traverser
*/
@Override
- public T attach(final Vertex hostVertex, final Function<Host, Function<Attachable<T>, T>> method);
-
- /**
- * Traversers can not attach to graphs and thus, an {@link UnsupportedOperationException} is thrown.
- *
- * @param graph the graph to attach the traverser to, which it can't.
- * @return nothing as an exception is thrown
- * @throws UnsupportedOperationException is always thrown as it makes no sense to attach a traverser to a graph
- */
- @Override
- public default T attach(final Graph graph, final Function<Host, Function<Attachable<T>, T>> method) throws UnsupportedOperationException {
- throw new UnsupportedOperationException("A traverser can only exist at the vertices of the graph, not the graph itself");
- }
+ public T attach(final Function<Attachable<T>, T> method);
/**
* Set the sideEffects of the {@link Traversal}. Given that traversers can move between machines,
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/597a8bac/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/traverser/B_O_P_S_SE_SL_Traverser.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/traverser/B_O_P_S_SE_SL_Traverser.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/traverser/B_O_P_S_SE_SL_Traverser.java
index 1051d6f..c924c00 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/traverser/B_O_P_S_SE_SL_Traverser.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/traverser/B_O_P_S_SE_SL_Traverser.java
@@ -66,10 +66,10 @@ public class B_O_P_S_SE_SL_Traverser<T> extends B_O_S_SE_SL_Traverser<T> {
}
@Override
- public T attach(final Vertex hostVertex, final Function<Host, Function<Attachable<T>, T>> method) {
+ public T attach(final Function<Attachable<T>, T> method) {
// you do not want to attach a path because it will reference graph objects not at the current vertex
if (this.t instanceof Attachable && !(((Attachable) this.t).get() instanceof Path))
- this.t = ((Attachable<T>) this.t).attach(hostVertex, method);
+ this.t = ((Attachable<T>) this.t).attach(method);
return this.t;
}
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/597a8bac/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/traverser/util/AbstractTraverser.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/traverser/util/AbstractTraverser.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/traverser/util/AbstractTraverser.java
index 2856e13..8bff471 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/traverser/util/AbstractTraverser.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/traverser/util/AbstractTraverser.java
@@ -110,10 +110,10 @@ public abstract class AbstractTraverser<T> implements Traverser<T>, Traverser.Ad
}
@Override
- public T attach(final Vertex hostVertex, final Function<Host, Function<Attachable<T>, T>> method) {
+ public T attach(final Function<Attachable<T>, T> method) {
// you do not want to attach a path because it will reference graph objects not at the current vertex
if (this.t instanceof Attachable && !(((Attachable) this.t).get() instanceof Path))
- this.t = ((Attachable<T>) this.t).attach(hostVertex, method);
+ this.t = ((Attachable<T>) this.t).attach(method);
return this.t;
}
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/597a8bac/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/traverser/util/EmptyTraverser.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/traverser/util/EmptyTraverser.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/traverser/util/EmptyTraverser.java
index 44c13e5..0d7c080 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/traverser/util/EmptyTraverser.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/traverser/util/EmptyTraverser.java
@@ -90,7 +90,7 @@ public final class EmptyTraverser<T> implements Traverser<T>, Traverser.Admin<T>
}
@Override
- public T attach(final Vertex hostVertex, final Function<Host, Function<Attachable<T>, T>> method) {
+ public T attach(final Function<Attachable<T>, T> method) {
return null;
}
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/597a8bac/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io/gryo/GryoReader.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io/gryo/GryoReader.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io/gryo/GryoReader.java
index 0d1ecbd..987bd27 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io/gryo/GryoReader.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io/gryo/GryoReader.java
@@ -125,9 +125,9 @@ public class GryoReader implements GraphReader {
// have vertex labels in the output we can't do this single pass
final Map<Vertex,Vertex> cache = new HashMap<>();
IteratorUtils.iterate(new VertexInputIterator(new Input(inputStream), attachable ->
- cache.put(attachable.get(), attachable.attach(graphToWriteTo, Attachable.Method::create))));
+ cache.put(attachable.get(), attachable.attach(Attachable.Method.create(graphToWriteTo)))));
cache.entrySet().forEach(kv -> kv.getKey().edges(Direction.OUT)
- .forEachRemaining(e -> ((StarGraph.StarEdge) e).attach(kv.getValue(), Attachable.Method::create)));
+ .forEachRemaining(e -> ((StarGraph.StarEdge) e).attach(Attachable.Method.create(kv.getValue()))));
}
@Override
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/597a8bac/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/util/Attachable.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/util/Attachable.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/util/Attachable.java
index 280ad15..5ed3997 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/util/Attachable.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/util/Attachable.java
@@ -50,12 +50,8 @@ public interface Attachable<V> {
*/
public V get();
- public default V attach(final Vertex hostVertex, final Function<Host, Function<Attachable<V>, V>> method) throws IllegalStateException {
- return method.apply(hostVertex).apply(this);
- }
-
- public default V attach(final Graph hostGraph, final Function<Host, Function<Attachable<V>, V>> method) throws IllegalStateException {
- return method.apply(hostGraph).apply(this);
+ public default V attach(final Function<Attachable<V>, V> method) throws IllegalStateException {
+ return method.apply(this);
}
public static class Method {
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/597a8bac/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/util/detached/DetachedPath.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/util/detached/DetachedPath.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/util/detached/DetachedPath.java
index 9fdb756..13f3d6c 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/util/detached/DetachedPath.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/util/detached/DetachedPath.java
@@ -64,16 +64,9 @@ public class DetachedPath extends MutablePath implements Attachable<Path> {
}
@Override
- public Path attach(final Graph hostGraph, final Function<Host, Function<Attachable<Path>, Path>> method) {
+ public Path attach(final Function<Attachable<Path>, Path> method) {
final Path path = MutablePath.make(); // TODO: Use ImmutablePath?
- this.forEach((object, labels) -> path.extend(object instanceof Attachable ? ((Attachable) object).attach(hostGraph, method) : object, labels.toArray(new String[labels.size()])));
- return path;
- }
-
- @Override
- public Path attach(final Vertex hostVertex, final Function<Host, Function<Attachable<Path>, Path>> method) {
- final Path path = MutablePath.make(); // TODO: Use ImmutablePath?
- this.forEach((object, labels) -> path.extend(object instanceof Attachable ? ((Attachable) object).attach(hostVertex, method) : object, labels.toArray(new String[labels.size()])));
+ this.forEach((object, labels) -> path.extend(object instanceof Attachable ? ((Attachable) object).attach(method) : object, labels.toArray(new String[labels.size()])));
return path;
}
}
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/597a8bac/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/util/reference/ReferencePath.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/util/reference/ReferencePath.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/util/reference/ReferencePath.java
index 1f9b41b..2ba6dcc 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/util/reference/ReferencePath.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/util/reference/ReferencePath.java
@@ -67,16 +67,9 @@ public class ReferencePath extends MutablePath implements Attachable<Path> {
}
@Override
- public Path attach(final Graph hostGraph, final Function<Host, Function<Attachable<Path>, Path>> method) {
+ public Path attach(final Function<Attachable<Path>, Path> method) {
final Path path = MutablePath.make(); // TODO: Use ImmutablePath?
- this.forEach((object, labels) -> path.extend(object instanceof Attachable ? ((Attachable) object).attach(hostGraph, method) : object, labels.toArray(new String[labels.size()])));
- return path;
- }
-
- @Override
- public Path attach(final Vertex hostVertex, final Function<Host, Function<Attachable<Path>, Path>> method) {
- final Path path = MutablePath.make(); // TODO: Use ImmutablePath?
- this.forEach((object, labels) -> path.extend(object instanceof Attachable ? ((Attachable) object).attach(hostVertex, method) : object, labels.toArray(new String[labels.size()])));
+ this.forEach((object, labels) -> path.extend(object instanceof Attachable ? ((Attachable) object).attach(method) : object, labels.toArray(new String[labels.size()])));
return path;
}
}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/597a8bac/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/util/detached/DetachedEdgeTest.java
----------------------------------------------------------------------
diff --git a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/util/detached/DetachedEdgeTest.java b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/util/detached/DetachedEdgeTest.java
index c424372..3daea28 100644
--- a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/util/detached/DetachedEdgeTest.java
+++ b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/util/detached/DetachedEdgeTest.java
@@ -126,7 +126,7 @@ public class DetachedEdgeTest extends AbstractGremlinTest {
public void shouldAttachToGraph() {
final Edge toDetach = g.E(convertToEdgeId("josh", "created", "lop")).next();
final DetachedEdge detachedEdge = DetachedFactory.detach(toDetach, true);
- final Edge attached = detachedEdge.attach(graph, Attachable.Method::get);
+ final Edge attached = detachedEdge.attach(Attachable.Method.get(graph));
assertEquals(toDetach, attached);
assertFalse(attached instanceof DetachedEdge);
@@ -138,7 +138,7 @@ public class DetachedEdgeTest extends AbstractGremlinTest {
final Edge toDetach = g.E(convertToEdgeId("josh", "created", "lop")).next();
final Vertex outV = toDetach.vertices(Direction.OUT).next();
final DetachedEdge detachedEdge = DetachedFactory.detach(toDetach, true);
- final Edge attached = detachedEdge.attach(outV, Attachable.Method::get);
+ final Edge attached = detachedEdge.attach(Attachable.Method.get(outV));
assertEquals(toDetach, attached);
assertFalse(attached instanceof DetachedEdge);
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/597a8bac/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/util/detached/DetachedPropertyTest.java
----------------------------------------------------------------------
diff --git a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/util/detached/DetachedPropertyTest.java b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/util/detached/DetachedPropertyTest.java
index 344ab68..b033d1c 100644
--- a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/util/detached/DetachedPropertyTest.java
+++ b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/util/detached/DetachedPropertyTest.java
@@ -73,7 +73,7 @@ public class DetachedPropertyTest extends AbstractGremlinTest {
final Edge e = g.E(convertToEdgeId("josh", "created", "lop")).next();
final Property toDetach = e.properties("weight").next();
final DetachedProperty<?> detachedProperty = DetachedFactory.detach(toDetach);
- final Property attached = detachedProperty.attach(graph, Attachable.Method::get);
+ final Property attached = detachedProperty.attach(Attachable.Method.get(graph));
assertEquals(toDetach, attached);
assertFalse(attached instanceof DetachedProperty);
@@ -85,7 +85,7 @@ public class DetachedPropertyTest extends AbstractGremlinTest {
final Edge e = g.E(convertToEdgeId("josh", "created", "lop")).next();
final Property toDetach = e.property("weight");
final DetachedProperty<?> detachedProperty = DetachedFactory.detach(toDetach);
- final Property attached = detachedProperty.attach(e.outVertex(), Attachable.Method::get);
+ final Property attached = detachedProperty.attach(Attachable.Method.get(e.outVertex()));
assertEquals(toDetach, attached);
assertFalse(attached instanceof DetachedProperty);
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/597a8bac/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/util/detached/DetachedVertexPropertyTest.java
----------------------------------------------------------------------
diff --git a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/util/detached/DetachedVertexPropertyTest.java b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/util/detached/DetachedVertexPropertyTest.java
index 1f7730e..4bf0752 100644
--- a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/util/detached/DetachedVertexPropertyTest.java
+++ b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/util/detached/DetachedVertexPropertyTest.java
@@ -128,7 +128,7 @@ public class DetachedVertexPropertyTest extends AbstractGremlinTest {
final Vertex v = graph.addVertex();
final VertexProperty toDetach = v.property(VertexProperty.Cardinality.single, "test", "this");
final DetachedVertexProperty<?> detached = DetachedFactory.detach(toDetach, true);
- final VertexProperty attached = detached.attach(graph, Attachable.Method::get);
+ final VertexProperty attached = detached.attach(Attachable.Method.get(graph));
assertEquals(toDetach, attached);
assertFalse(attached instanceof DetachedVertexProperty);
@@ -140,7 +140,7 @@ public class DetachedVertexPropertyTest extends AbstractGremlinTest {
final Vertex v = graph.addVertex();
final VertexProperty toDetach = v.property(VertexProperty.Cardinality.single, "test", "this");
final DetachedVertexProperty<?> detached = DetachedFactory.detach(toDetach, true);
- final VertexProperty attached = detached.attach(v, Attachable.Method::get);
+ final VertexProperty attached = detached.attach(Attachable.Method.get(v));
assertEquals(toDetach, attached);
assertEquals(toDetach.getClass(), attached.getClass());
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/597a8bac/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/util/detached/DetachedVertexTest.java
----------------------------------------------------------------------
diff --git a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/util/detached/DetachedVertexTest.java b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/util/detached/DetachedVertexTest.java
index 1aebac7..6bd4cc3 100644
--- a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/util/detached/DetachedVertexTest.java
+++ b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/util/detached/DetachedVertexTest.java
@@ -139,7 +139,7 @@ public class DetachedVertexTest extends AbstractGremlinTest {
public void shouldAttachToGraph() {
final Vertex toDetach = g.V(convertToVertexId("josh")).next();
final DetachedVertex detachedVertex = DetachedFactory.detach(toDetach, true);
- final Vertex attached = detachedVertex.attach(graph, Attachable.Method::get);
+ final Vertex attached = detachedVertex.attach(Attachable.Method.get(graph));
assertEquals(toDetach, attached);
assertFalse(attached instanceof DetachedVertex);
@@ -150,7 +150,7 @@ public class DetachedVertexTest extends AbstractGremlinTest {
public void shouldAttachToVertex() {
final Vertex toDetach = g.V(convertToVertexId("josh")).next();
final DetachedVertex detachedVertex = DetachedFactory.detach(toDetach, true);
- final Vertex attached = detachedVertex.attach(toDetach, Attachable.Method::get);
+ final Vertex attached = detachedVertex.attach(Attachable.Method.get(toDetach));
assertEquals(toDetach, attached);
assertFalse(attached instanceof DetachedVertex);
@@ -293,7 +293,7 @@ public class DetachedVertexTest extends AbstractGremlinTest {
@FeatureRequirementSet(FeatureRequirementSet.Package.VERTICES_ONLY)
public void shouldCreateVertex() {
final DetachedVertex detachedVertex = new DetachedVertex(23, "dog", Collections.emptyMap());
- detachedVertex.attach(graph, Attachable.Method::create);
+ detachedVertex.attach(Attachable.Method.create(graph));
assertEquals(7, IteratorUtils.count(graph.vertices()));
final AtomicInteger dogTimes = new AtomicInteger(0);
graph.vertices().forEachRemaining(vertex -> {
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/597a8bac/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/util/reference/ReferenceEdgeTest.java
----------------------------------------------------------------------
diff --git a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/util/reference/ReferenceEdgeTest.java b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/util/reference/ReferenceEdgeTest.java
index 8577865..65ae375 100644
--- a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/util/reference/ReferenceEdgeTest.java
+++ b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/util/reference/ReferenceEdgeTest.java
@@ -103,7 +103,7 @@ public class ReferenceEdgeTest extends AbstractGremlinTest {
public void shouldAttachToGraph() {
final Edge toReference = g.E(convertToEdgeId("josh", "created", "lop")).next();
final ReferenceEdge referenceEdge = ReferenceFactory.detach(toReference);
- final Edge referenced = referenceEdge.attach(graph, Attachable.Method::get);
+ final Edge referenced = referenceEdge.attach(Attachable.Method.get(graph));
assertEquals(toReference, referenced);
assertFalse(referenced instanceof ReferenceEdge);
@@ -115,7 +115,7 @@ public class ReferenceEdgeTest extends AbstractGremlinTest {
final Edge toReference = g.E(convertToEdgeId("josh", "created", "lop")).next();
final Vertex outV = toReference.vertices(Direction.OUT).next();
final ReferenceEdge referenceEdge = ReferenceFactory.detach(toReference);
- final Edge attached = referenceEdge.attach(outV, Attachable.Method::get);
+ final Edge attached = referenceEdge.attach(Attachable.Method.get(outV));
assertEquals(toReference, attached);
assertFalse(attached instanceof ReferenceEdge);
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/597a8bac/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/util/reference/ReferenceVertexPropertyTest.java
----------------------------------------------------------------------
diff --git a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/util/reference/ReferenceVertexPropertyTest.java b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/util/reference/ReferenceVertexPropertyTest.java
index d7cf9b2..2095f67 100644
--- a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/util/reference/ReferenceVertexPropertyTest.java
+++ b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/util/reference/ReferenceVertexPropertyTest.java
@@ -81,7 +81,7 @@ public class ReferenceVertexPropertyTest extends AbstractGremlinTest {
final Vertex v = graph.addVertex();
final VertexProperty toReference = v.property(VertexProperty.Cardinality.single, "test", "this");
final ReferenceVertexProperty<?> rvp = ReferenceFactory.detach(toReference);
- final VertexProperty referenced = rvp.attach(graph, Attachable.Method::get);
+ final VertexProperty referenced = rvp.attach(Attachable.Method.get(graph));
assertEquals(toReference, referenced);
assertFalse(referenced instanceof ReferenceVertexProperty);
@@ -93,7 +93,7 @@ public class ReferenceVertexPropertyTest extends AbstractGremlinTest {
final Vertex v = graph.addVertex();
final VertexProperty toReference = v.property(VertexProperty.Cardinality.single, "test", "this");
final ReferenceVertexProperty<?> rvp = ReferenceFactory.detach(toReference);
- final VertexProperty referenced = rvp.attach(v, Attachable.Method::get);
+ final VertexProperty referenced = rvp.attach(Attachable.Method.get(v));
assertEquals(toReference, referenced);
assertEquals(toReference.getClass(), referenced.getClass());
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/597a8bac/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/util/reference/ReferenceVertexTest.java
----------------------------------------------------------------------
diff --git a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/util/reference/ReferenceVertexTest.java b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/util/reference/ReferenceVertexTest.java
index bcfca5e..5547144 100644
--- a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/util/reference/ReferenceVertexTest.java
+++ b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/util/reference/ReferenceVertexTest.java
@@ -103,7 +103,7 @@ public class ReferenceVertexTest extends AbstractGremlinTest {
public void shouldAttachToGraph() {
final Vertex v = g.V(convertToVertexId("josh")).next();
final ReferenceVertex referenceVertex = ReferenceFactory.detach(v);
- final Vertex attachedV = referenceVertex.attach(graph, Attachable.Method::get);
+ final Vertex attachedV = referenceVertex.attach(Attachable.Method.get(graph));
assertEquals(v, attachedV);
assertFalse(attachedV instanceof ReferenceVertex);
@@ -114,7 +114,7 @@ public class ReferenceVertexTest extends AbstractGremlinTest {
public void shouldAttachToVertex() {
final Vertex v = g.V(convertToVertexId("josh")).next();
final ReferenceVertex referenceVertex = ReferenceFactory.detach(v);
- final Vertex attachedV = referenceVertex.attach(v, Attachable.Method::get);
+ final Vertex attachedV = referenceVertex.attach(Attachable.Method.get(v));
assertEquals(v, attachedV);
assertFalse(attachedV instanceof ReferenceVertex);
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/597a8bac/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/util/star/StarGraphTest.java
----------------------------------------------------------------------
diff --git a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/util/star/StarGraphTest.java b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/util/star/StarGraphTest.java
index 66c8594..526ef99 100644
--- a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/util/star/StarGraphTest.java
+++ b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/util/star/StarGraphTest.java
@@ -83,18 +83,18 @@ public class StarGraphTest extends AbstractGremlinTest {
@LoadGraphWith(LoadGraphWith.GraphData.CREW)
public void testAttachableGetMethod() {
// vertex host
- g.V().forEachRemaining(vertex -> TestHelper.validateEquality(vertex, StarGraph.of(vertex).getStarVertex().attach(vertex, Attachable.Method::get)));
- g.V().forEachRemaining(vertex -> StarGraph.of(vertex).getStarVertex().properties().forEachRemaining(vertexProperty -> TestHelper.validateEquality(vertexProperty, ((Attachable<VertexProperty>) vertexProperty).attach(vertex, Attachable.Method::get))));
- g.V().forEachRemaining(vertex -> StarGraph.of(vertex).getStarVertex().properties().forEachRemaining(vertexProperty -> vertexProperty.properties().forEachRemaining(property -> TestHelper.validateEquality(property, ((Attachable<Property>) property).attach(vertex, Attachable.Method::get)))));
- g.V().forEachRemaining(vertex -> StarGraph.of(vertex).getStarVertex().edges(Direction.OUT).forEachRemaining(edge -> TestHelper.validateEquality(edge, ((Attachable<Edge>) edge).attach(vertex, Attachable.Method::get))));
- g.V().forEachRemaining(vertex -> StarGraph.of(vertex).getStarVertex().edges(Direction.OUT).forEachRemaining(edge -> edge.properties().forEachRemaining(property -> TestHelper.validateEquality(property, ((Attachable<Property>) property).attach(vertex, Attachable.Method::get)))));
+ g.V().forEachRemaining(vertex -> TestHelper.validateEquality(vertex, StarGraph.of(vertex).getStarVertex().attach(Attachable.Method.get(vertex))));
+ g.V().forEachRemaining(vertex -> StarGraph.of(vertex).getStarVertex().properties().forEachRemaining(vertexProperty -> TestHelper.validateEquality(vertexProperty, ((Attachable<VertexProperty>) vertexProperty).attach(Attachable.Method.get(vertex)))));
+ g.V().forEachRemaining(vertex -> StarGraph.of(vertex).getStarVertex().properties().forEachRemaining(vertexProperty -> vertexProperty.properties().forEachRemaining(property -> TestHelper.validateEquality(property, ((Attachable<Property>) property).attach(Attachable.Method.get(vertex))))));
+ g.V().forEachRemaining(vertex -> StarGraph.of(vertex).getStarVertex().edges(Direction.OUT).forEachRemaining(edge -> TestHelper.validateEquality(edge, ((Attachable<Edge>) edge).attach(Attachable.Method.get(vertex)))));
+ g.V().forEachRemaining(vertex -> StarGraph.of(vertex).getStarVertex().edges(Direction.OUT).forEachRemaining(edge -> edge.properties().forEachRemaining(property -> TestHelper.validateEquality(property, ((Attachable<Property>) property).attach(Attachable.Method.get(vertex))))));
// graph host
- g.V().forEachRemaining(vertex -> TestHelper.validateEquality(vertex, StarGraph.of(vertex).getStarVertex().attach(graph, Attachable.Method::get)));
- g.V().forEachRemaining(vertex -> StarGraph.of(vertex).getStarVertex().properties().forEachRemaining(vertexProperty -> TestHelper.validateEquality(vertexProperty, ((Attachable<VertexProperty>) vertexProperty).attach(graph, Attachable.Method::get))));
- g.V().forEachRemaining(vertex -> StarGraph.of(vertex).getStarVertex().properties().forEachRemaining(vertexProperty -> vertexProperty.properties().forEachRemaining(property -> TestHelper.validateEquality(property, ((Attachable<Property>) property).attach(graph, Attachable.Method::get)))));
- g.V().forEachRemaining(vertex -> StarGraph.of(vertex).getStarVertex().edges(Direction.OUT).forEachRemaining(edge -> TestHelper.validateEquality(edge, ((Attachable<Edge>) edge).attach(graph, Attachable.Method::get))));
- g.V().forEachRemaining(vertex -> StarGraph.of(vertex).getStarVertex().edges(Direction.OUT).forEachRemaining(edge -> edge.properties().forEachRemaining(property -> TestHelper.validateEquality(property, ((Attachable<Property>) property).attach(graph, Attachable.Method::get)))));
+ g.V().forEachRemaining(vertex -> TestHelper.validateEquality(vertex, StarGraph.of(vertex).getStarVertex().attach(Attachable.Method.get(graph))));
+ g.V().forEachRemaining(vertex -> StarGraph.of(vertex).getStarVertex().properties().forEachRemaining(vertexProperty -> TestHelper.validateEquality(vertexProperty, ((Attachable<VertexProperty>) vertexProperty).attach(Attachable.Method.get(graph)))));
+ g.V().forEachRemaining(vertex -> StarGraph.of(vertex).getStarVertex().properties().forEachRemaining(vertexProperty -> vertexProperty.properties().forEachRemaining(property -> TestHelper.validateEquality(property, ((Attachable<Property>) property).attach(Attachable.Method.get(graph))))));
+ g.V().forEachRemaining(vertex -> StarGraph.of(vertex).getStarVertex().edges(Direction.OUT).forEachRemaining(edge -> TestHelper.validateEquality(edge, ((Attachable<Edge>) edge).attach(Attachable.Method.get(graph)))));
+ g.V().forEachRemaining(vertex -> StarGraph.of(vertex).getStarVertex().edges(Direction.OUT).forEachRemaining(edge -> edge.properties().forEachRemaining(property -> TestHelper.validateEquality(property, ((Attachable<Property>) property).attach(Attachable.Method.get(graph))))));
}
@Test
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/597a8bac/hadoop-gremlin/src/main/java/org/apache/tinkerpop/gremlin/hadoop/process/computer/spark/SparkExecutor.java
----------------------------------------------------------------------
diff --git a/hadoop-gremlin/src/main/java/org/apache/tinkerpop/gremlin/hadoop/process/computer/spark/SparkExecutor.java b/hadoop-gremlin/src/main/java/org/apache/tinkerpop/gremlin/hadoop/process/computer/spark/SparkExecutor.java
index 48b0ac1..09c35d0 100644
--- a/hadoop-gremlin/src/main/java/org/apache/tinkerpop/gremlin/hadoop/process/computer/spark/SparkExecutor.java
+++ b/hadoop-gremlin/src/main/java/org/apache/tinkerpop/gremlin/hadoop/process/computer/spark/SparkExecutor.java
@@ -91,7 +91,7 @@ public final class SparkExecutor {
final boolean hasViewAndMessages = vertexViewIncoming._2()._2().isPresent(); // if this is the first iteration, then there are no views or messages
final List<DetachedVertexProperty<Object>> previousView = hasViewAndMessages ? vertexViewIncoming._2()._2().get().getView() : Collections.emptyList();
final List<M> incomingMessages = hasViewAndMessages ? vertexViewIncoming._2()._2().get().getIncomingMessages() : Collections.emptyList();
- previousView.forEach(property -> property.attach(vertex, Attachable.Method::create)); // attach the view to the vertex
+ previousView.forEach(property -> property.attach(Attachable.Method.create(vertex))); // attach the view to the vertex
///
messenger.setVertexAndIncomingMessages(vertex, incomingMessages); // set the messenger with the incoming messages
workerVertexProgram.execute(ComputerGraph.of(vertex, elementComputeKeys), messenger, memory); // execute the vertex program on this vertex for this iteration
@@ -154,7 +154,7 @@ public final class SparkExecutor {
((StarGraph.StarVertex) vertex).dropEdges();
((StarGraph.StarVertex) vertex).dropVertexProperties(elementComputeKeys);
final List<DetachedVertexProperty<Object>> view = tuple._2().isPresent() ? tuple._2().get().getView() : Collections.emptyList();
- view.forEach(property -> property.attach(vertex, Attachable.Method::create));
+ view.forEach(property -> property.attach(Attachable.Method.create(vertex)));
return tuple._1();
});
}
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/597a8bac/hadoop-gremlin/src/main/java/org/apache/tinkerpop/gremlin/hadoop/structure/io/graphson/GraphSONRecordReader.java
----------------------------------------------------------------------
diff --git a/hadoop-gremlin/src/main/java/org/apache/tinkerpop/gremlin/hadoop/structure/io/graphson/GraphSONRecordReader.java b/hadoop-gremlin/src/main/java/org/apache/tinkerpop/gremlin/hadoop/structure/io/graphson/GraphSONRecordReader.java
index 1d68338..6a61cd7 100644
--- a/hadoop-gremlin/src/main/java/org/apache/tinkerpop/gremlin/hadoop/structure/io/graphson/GraphSONRecordReader.java
+++ b/hadoop-gremlin/src/main/java/org/apache/tinkerpop/gremlin/hadoop/structure/io/graphson/GraphSONRecordReader.java
@@ -65,8 +65,8 @@ public class GraphSONRecordReader extends RecordReader<NullWritable, VertexWrita
return false;
final StarGraph starGraph = StarGraph.open();
- final Function<Attachable<Vertex>, Vertex> vertexMaker = detachedVertex -> detachedVertex.attach(starGraph, Attachable.Method::create);
- final Function<Attachable<Edge>, Edge> edgeMaker = detachedEdge -> detachedEdge.attach(starGraph, Attachable.Method::create);
+ final Function<Attachable<Vertex>, Vertex> vertexMaker = detachedVertex -> detachedVertex.attach(Attachable.Method.create(starGraph));
+ final Function<Attachable<Edge>, Edge> edgeMaker = detachedEdge -> detachedEdge.attach(Attachable.Method.create(starGraph));
try (InputStream in = new ByteArrayInputStream(this.lineRecordReader.getCurrentValue().getBytes())) {
this.vertexWritable.set(this.hasEdges ?
this.graphsonReader.readVertex(in, vertexMaker, edgeMaker) :
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/597a8bac/hadoop-gremlin/src/main/java/org/apache/tinkerpop/gremlin/hadoop/structure/io/gryo/GryoRecordReader.java
----------------------------------------------------------------------
diff --git a/hadoop-gremlin/src/main/java/org/apache/tinkerpop/gremlin/hadoop/structure/io/gryo/GryoRecordReader.java b/hadoop-gremlin/src/main/java/org/apache/tinkerpop/gremlin/hadoop/structure/io/gryo/GryoRecordReader.java
index acfc8e4..775246b 100644
--- a/hadoop-gremlin/src/main/java/org/apache/tinkerpop/gremlin/hadoop/structure/io/gryo/GryoRecordReader.java
+++ b/hadoop-gremlin/src/main/java/org/apache/tinkerpop/gremlin/hadoop/structure/io/gryo/GryoRecordReader.java
@@ -131,8 +131,8 @@ public class GryoRecordReader extends RecordReader<NullWritable, VertexWritable>
if (terminatorLocation >= TERMINATOR.length) {
final StarGraph starGraph = StarGraph.open();
- final Function<Attachable<Vertex>, Vertex> vertexMaker = detachedVertex -> detachedVertex.attach(starGraph, Attachable.Method::create);
- final Function<Attachable<Edge>, Edge> edgeMaker = detachedEdge -> detachedEdge.attach(starGraph, Attachable.Method::create);
+ final Function<Attachable<Vertex>, Vertex> vertexMaker = detachedVertex -> detachedVertex.attach(Attachable.Method.create(starGraph));
+ final Function<Attachable<Edge>, Edge> edgeMaker = detachedEdge -> detachedEdge.attach(Attachable.Method.create(starGraph));
try (InputStream in = new ByteArrayInputStream(output.toByteArray())) {
this.vertexWritable.set(this.hasEdges ?
this.gryoReader.readVertex(in, vertexMaker, edgeMaker) :