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 2016/09/29 11:36:54 UTC

tinkerpop git commit: Used nextTraverser() in what was formerly TraversalIterator.

Repository: tinkerpop
Updated Branches:
  refs/heads/master 465ae2801 -> 850e159b8


Used nextTraverser() in what was formerly TraversalIterator.

This is now the preferred way rather than pulling the iterator out of getEndStep() CTR


Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/850e159b
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/850e159b
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/850e159b

Branch: refs/heads/master
Commit: 850e159b8dc883ac3995c8d775b8f09b7a64b440
Parents: 465ae28
Author: Stephen Mallette <sp...@genoprime.com>
Authored: Thu Sep 29 07:33:20 2016 -0400
Committer: Stephen Mallette <sp...@genoprime.com>
Committed: Thu Sep 29 07:33:20 2016 -0400

----------------------------------------------------------------------
 .../op/traversal/TraversalOpProcessor.java      |  8 +--
 .../gremlin/server/util/TraversalIterator.java  | 60 --------------------
 .../gremlin/server/util/TraverserIterator.java  | 58 +++++++++++++++++++
 3 files changed, 62 insertions(+), 64 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/850e159b/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/op/traversal/TraversalOpProcessor.java
----------------------------------------------------------------------
diff --git a/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/op/traversal/TraversalOpProcessor.java b/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/op/traversal/TraversalOpProcessor.java
index f5ff44d..e1534e2 100644
--- a/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/op/traversal/TraversalOpProcessor.java
+++ b/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/op/traversal/TraversalOpProcessor.java
@@ -42,7 +42,7 @@ import org.apache.tinkerpop.gremlin.server.op.AbstractOpProcessor;
 import org.apache.tinkerpop.gremlin.server.op.OpProcessorException;
 import org.apache.tinkerpop.gremlin.server.util.MetricManager;
 import org.apache.tinkerpop.gremlin.server.util.SideEffectIterator;
-import org.apache.tinkerpop.gremlin.server.util.TraversalIterator;
+import org.apache.tinkerpop.gremlin.server.util.TraverserIterator;
 import org.apache.tinkerpop.gremlin.structure.Graph;
 import org.apache.tinkerpop.gremlin.structure.io.graphson.GraphSONMapper;
 import org.apache.tinkerpop.gremlin.structure.io.graphson.GraphSONVersion;
@@ -366,7 +366,7 @@ public class TraversalOpProcessor extends AbstractOpProcessor {
                     try {
                         // compile the traversal - without it getEndStep() has nothing in it
                         traversal.applyStrategies();
-                        handleIterator(context, new TraversalIterator(traversal));
+                        handleIterator(context, new TraverserIterator(traversal));
                     } catch (TimeoutException ex) {
                         final String errorMessage = String.format("Response iteration exceeded the configured threshold for request [%s] - %s", msg.getRequestId(), ex.getMessage());
                         logger.warn(errorMessage);
@@ -399,8 +399,8 @@ public class TraversalOpProcessor extends AbstractOpProcessor {
 
     @Override
     protected void iterateComplete(final ChannelHandlerContext ctx, final RequestMessage msg, final Iterator itty) {
-        if (itty instanceof TraversalIterator) {
-            final Traversal.Admin traversal = ((TraversalIterator) itty).getTraversal();
+        if (itty instanceof TraverserIterator) {
+            final Traversal.Admin traversal = ((TraverserIterator) itty).getTraversal();
             if (!traversal.getSideEffects().isEmpty()) {
                 cache.put(msg.getRequestId(), traversal.getSideEffects());
             }

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/850e159b/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/util/TraversalIterator.java
----------------------------------------------------------------------
diff --git a/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/util/TraversalIterator.java b/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/util/TraversalIterator.java
deleted file mode 100644
index 041dc0b..0000000
--- a/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/util/TraversalIterator.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
- * 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.server.util;
-
-import org.apache.tinkerpop.gremlin.process.remote.traversal.DefaultRemoteTraverser;
-import org.apache.tinkerpop.gremlin.process.traversal.Traversal;
-import org.apache.tinkerpop.gremlin.process.traversal.Traverser;
-import org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.HaltedTraverserStrategy;
-
-import java.util.Iterator;
-
-/**
- * @author Stephen Mallette (http://stephen.genoprime.com)
- */
-public class TraversalIterator implements Iterator<Object> {
-
-    private final Traversal.Admin traversal;
-    private final Iterator<Object> traversalIterator;
-    private final HaltedTraverserStrategy haltedTraverserStrategy;
-
-    public TraversalIterator(final Traversal.Admin traversal) {
-        this.traversal = traversal;
-        this.traversalIterator = traversal.getEndStep();
-        this.haltedTraverserStrategy = traversal.getStrategies().getStrategy(HaltedTraverserStrategy.class).orElse(
-                Boolean.valueOf(System.getProperty("is.testing", "false")) ?
-                        HaltedTraverserStrategy.detached() :
-                        HaltedTraverserStrategy.reference());
-    }
-
-    public Traversal.Admin getTraversal() {
-        return traversal;
-    }
-
-    @Override
-    public boolean hasNext() {
-        return this.traversalIterator.hasNext();
-    }
-
-    @Override
-    public Object next() {
-        final Traverser.Admin t = this.haltedTraverserStrategy.halt((Traverser.Admin) traversalIterator.next());
-        return new DefaultRemoteTraverser<>(t.get(), t.bulk());
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/850e159b/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/util/TraverserIterator.java
----------------------------------------------------------------------
diff --git a/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/util/TraverserIterator.java b/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/util/TraverserIterator.java
new file mode 100644
index 0000000..d4bf5c0
--- /dev/null
+++ b/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/util/TraverserIterator.java
@@ -0,0 +1,58 @@
+/*
+ * 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.server.util;
+
+import org.apache.tinkerpop.gremlin.process.remote.traversal.DefaultRemoteTraverser;
+import org.apache.tinkerpop.gremlin.process.traversal.Traversal;
+import org.apache.tinkerpop.gremlin.process.traversal.Traverser;
+import org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.HaltedTraverserStrategy;
+
+import java.util.Iterator;
+
+/**
+ * @author Stephen Mallette (http://stephen.genoprime.com)
+ */
+public class TraverserIterator implements Iterator<Object> {
+
+    private final Traversal.Admin traversal;
+    private final HaltedTraverserStrategy haltedTraverserStrategy;
+
+    public TraverserIterator(final Traversal.Admin traversal) {
+        this.traversal = traversal;
+        this.haltedTraverserStrategy = traversal.getStrategies().getStrategy(HaltedTraverserStrategy.class).orElse(
+                Boolean.valueOf(System.getProperty("is.testing", "false")) ?
+                        HaltedTraverserStrategy.detached() :
+                        HaltedTraverserStrategy.reference());
+    }
+
+    public Traversal.Admin getTraversal() {
+        return traversal;
+    }
+
+    @Override
+    public boolean hasNext() {
+        return this.traversal.hasNext();
+    }
+
+    @Override
+    public Object next() {
+        final Traverser.Admin t = this.haltedTraverserStrategy.halt(traversal.nextTraverser());
+        return new DefaultRemoteTraverser<>(t.get(), t.bulk());
+    }
+}
\ No newline at end of file