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/02/19 00:02:10 UTC

incubator-tinkerpop git commit: dah. inner classes and reflective construction in Hadoop. Fixed.

Repository: incubator-tinkerpop
Updated Branches:
  refs/heads/master ab7f0ffe5 -> 8edffd68d


dah. inner classes and reflective construction in Hadoop. Fixed.


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

Branch: refs/heads/master
Commit: 8edffd68d93b9664f7f3c30118d77087afe0132b
Parents: ab7f0ff
Author: Marko A. Rodriguez <ok...@gmail.com>
Authored: Wed Feb 18 16:02:10 2015 -0700
Committer: Marko A. Rodriguez <ok...@gmail.com>
Committed: Wed Feb 18 16:02:10 2015 -0700

----------------------------------------------------------------------
 .../traversal/step/map/ComputerResultStep.java  |  2 +-
 .../traversal/step/map/CountGlobalStep.java     | 23 ++++++---
 .../graph/traversal/step/map/MaxGlobalStep.java | 22 ++++++---
 .../step/util/ReducingBarrierStep.java          |  6 +--
 .../gremlin/process/ProcessComputerSuite.java   | 49 ++++++++++++++++++--
 5 files changed, 79 insertions(+), 23 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/8edffd68/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 4c0fe83..d927892 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
@@ -106,7 +106,7 @@ public final class ComputerResultStep<S> extends AbstractStep<S, S> {
                 this.traversers = IteratorUtils.of(this.getTraversal().getTraverserGenerator().generate((S) sideEffects, this, 1l));
             }
         } else if (endStep instanceof ReducingBarrierStep) {
-            this.traversers = result.memory().get(ReducingBarrierStep.REDUCING);
+            this.traversers = IteratorUtils.of(this.getTraversal().getTraverserGenerator().generate(result.memory().get(ReducingBarrierStep.REDUCING), this, 1l));
         } else {
             this.traversers = result.memory().get(TraverserMapReduce.TRAVERSERS);
         }

http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/8edffd68/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/graph/traversal/step/map/CountGlobalStep.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/graph/traversal/step/map/CountGlobalStep.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/graph/traversal/step/map/CountGlobalStep.java
index 28e413d..e62153d 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/graph/traversal/step/map/CountGlobalStep.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/graph/traversal/step/map/CountGlobalStep.java
@@ -18,7 +18,6 @@
  */
 package org.apache.tinkerpop.gremlin.process.graph.traversal.step.map;
 
-import org.apache.tinkerpop.gremlin.process.Step;
 import org.apache.tinkerpop.gremlin.process.Traversal;
 import org.apache.tinkerpop.gremlin.process.Traverser;
 import org.apache.tinkerpop.gremlin.process.computer.KeyValue;
@@ -31,7 +30,6 @@ import org.apache.tinkerpop.gremlin.process.traverser.TraverserRequirement;
 import org.apache.tinkerpop.gremlin.process.util.TraverserSet;
 import org.apache.tinkerpop.gremlin.structure.Vertex;
 import org.apache.tinkerpop.gremlin.util.function.ConstantSupplier;
-import org.apache.tinkerpop.gremlin.util.iterator.IteratorUtils;
 
 import java.io.Serializable;
 import java.util.EnumSet;
@@ -59,8 +57,8 @@ public final class CountGlobalStep<S> extends ReducingBarrierStep<S, Long> imple
     }
 
     @Override
-    public MapReduce<MapReduce.NullObject, Long, MapReduce.NullObject, Long, Iterator<Traverser.Admin<Long>>> getMapReduce() {
-        return new CountMapReduce();
+    public MapReduce<MapReduce.NullObject, Long, MapReduce.NullObject, Long, Long> getMapReduce() {
+        return CountMapReduce.instance();
     }
 
     ///////////
@@ -85,7 +83,13 @@ public final class CountGlobalStep<S> extends ReducingBarrierStep<S, Long> imple
 
     ///////////
 
-    private class CountMapReduce extends StaticMapReduce<MapReduce.NullObject, Long, MapReduce.NullObject, Long, Iterator<Traverser.Admin<Long>>> {
+    private static class CountMapReduce extends StaticMapReduce<MapReduce.NullObject, Long, MapReduce.NullObject, Long, Long> {
+
+        private static CountMapReduce INSTANCE = new CountMapReduce();
+
+        private CountMapReduce() {
+
+        }
 
         @Override
         public boolean doStage(final MapReduce.Stage stage) {
@@ -117,9 +121,14 @@ public final class CountGlobalStep<S> extends ReducingBarrierStep<S, Long> imple
         }
 
         @Override
-        public Iterator<Traverser.Admin<Long>> generateFinalResult(final Iterator<KeyValue<NullObject, Long>> keyValues) {
-            return IteratorUtils.of(getTraversal().getTraverserGenerator().generate(keyValues.hasNext() ? keyValues.next().getValue() : 0L, (Step) CountGlobalStep.this, 1L));
+        public Long generateFinalResult(final Iterator<KeyValue<NullObject, Long>> keyValues) {
+            return keyValues.hasNext() ? keyValues.next().getValue() : 0L;
         }
+
+        public static final CountMapReduce instance() {
+            return INSTANCE;
+        }
+
     }
 
 }

http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/8edffd68/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/graph/traversal/step/map/MaxGlobalStep.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/graph/traversal/step/map/MaxGlobalStep.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/graph/traversal/step/map/MaxGlobalStep.java
index 0cfb574..2017add 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/graph/traversal/step/map/MaxGlobalStep.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/graph/traversal/step/map/MaxGlobalStep.java
@@ -18,7 +18,6 @@
  */
 package org.apache.tinkerpop.gremlin.process.graph.traversal.step.map;
 
-import org.apache.tinkerpop.gremlin.process.Step;
 import org.apache.tinkerpop.gremlin.process.Traversal;
 import org.apache.tinkerpop.gremlin.process.Traverser;
 import org.apache.tinkerpop.gremlin.process.computer.KeyValue;
@@ -31,7 +30,6 @@ import org.apache.tinkerpop.gremlin.process.traverser.TraverserRequirement;
 import org.apache.tinkerpop.gremlin.process.util.TraverserSet;
 import org.apache.tinkerpop.gremlin.structure.Vertex;
 import org.apache.tinkerpop.gremlin.util.function.ConstantSupplier;
-import org.apache.tinkerpop.gremlin.util.iterator.IteratorUtils;
 
 import java.io.Serializable;
 import java.util.Collections;
@@ -56,8 +54,8 @@ public final class MaxGlobalStep<S extends Number> extends ReducingBarrierStep<S
     }
 
     @Override
-    public MapReduce<MapReduce.NullObject, Number, MapReduce.NullObject, Number, Iterator<Traverser.Admin<Number>>> getMapReduce() {
-        return new MaxMapReduce();
+    public MapReduce<MapReduce.NullObject, Number, MapReduce.NullObject, Number, Number> getMapReduce() {
+        return MaxMapReduce.instance();
     }
 
     /////
@@ -82,7 +80,13 @@ public final class MaxGlobalStep<S extends Number> extends ReducingBarrierStep<S
 
     ///////////
 
-    private class MaxMapReduce extends StaticMapReduce<MapReduce.NullObject, Number, MapReduce.NullObject, Number, Iterator<Traverser.Admin<Number>>> {
+    private static class MaxMapReduce extends StaticMapReduce<MapReduce.NullObject, Number, MapReduce.NullObject, Number, Number> {
+
+        private static final MaxMapReduce INSTANCE = new MaxMapReduce();
+
+        private MaxMapReduce() {
+
+        }
 
         @Override
         public boolean doStage(final MapReduce.Stage stage) {
@@ -116,8 +120,12 @@ public final class MaxGlobalStep<S extends Number> extends ReducingBarrierStep<S
         }
 
         @Override
-        public Iterator<Traverser.Admin<Number>> generateFinalResult(final Iterator<KeyValue<NullObject, Number>> keyValues) {
-            return IteratorUtils.of(getTraversal().getTraverserGenerator().generate(keyValues.hasNext() ? keyValues.next().getValue() : -Double.MAX_VALUE, (Step) MaxGlobalStep.this, 1L));
+        public Number generateFinalResult(final Iterator<KeyValue<NullObject, Number>> keyValues) {
+            return keyValues.hasNext() ? keyValues.next().getValue() : -Double.MAX_VALUE;
+        }
+
+        public static final MaxMapReduce instance() {
+            return INSTANCE;
         }
     }
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/8edffd68/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/graph/traversal/step/util/ReducingBarrierStep.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/graph/traversal/step/util/ReducingBarrierStep.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/graph/traversal/step/util/ReducingBarrierStep.java
index 484d65e..0aad6c0 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/graph/traversal/step/util/ReducingBarrierStep.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/graph/traversal/step/util/ReducingBarrierStep.java
@@ -34,9 +34,7 @@ import org.apache.tinkerpop.gremlin.process.traversal.util.TraversalHelper;
 import org.apache.tinkerpop.gremlin.process.util.TraverserSet;
 import org.apache.tinkerpop.gremlin.structure.Graph;
 import org.apache.tinkerpop.gremlin.structure.Vertex;
-import org.apache.tinkerpop.gremlin.util.iterator.IteratorUtils;
 
-import java.util.Collections;
 import java.util.Iterator;
 import java.util.function.BiFunction;
 import java.util.function.Supplier;
@@ -127,7 +125,7 @@ public abstract class ReducingBarrierStep<S, E> extends AbstractStep<S, E> imple
 
         @Override
         public Object generateFinalResult(final Iterator keyValues) {
-            return keyValues.hasNext() ? IteratorUtils.of(((KeyValue) keyValues.next()).getValue()) : Collections.emptyIterator();
+            return ((KeyValue) keyValues.next()).getValue();
 
         }
 
@@ -143,7 +141,7 @@ public abstract class ReducingBarrierStep<S, E> extends AbstractStep<S, E> imple
             while (values.hasNext()) {
                 mutatingSeed = function.apply(mutatingSeed, values.next());
             }
-            emitter.emit(getTraversal().getTraverserGenerator().generate(FinalGet.tryFinalGet(mutatingSeed), (Step) getTraversal().getEndStep(), 1l));
+            emitter.emit(FinalGet.tryFinalGet(mutatingSeed));
         }
 
     }

http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/8edffd68/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/ProcessComputerSuite.java
----------------------------------------------------------------------
diff --git a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/ProcessComputerSuite.java b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/ProcessComputerSuite.java
index 51ef459..a7c8544 100644
--- a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/ProcessComputerSuite.java
+++ b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/ProcessComputerSuite.java
@@ -23,10 +23,51 @@ import org.apache.tinkerpop.gremlin.AbstractGremlinTest;
 import org.apache.tinkerpop.gremlin.process.computer.GraphComputerTest;
 import org.apache.tinkerpop.gremlin.process.computer.ranking.PageRankVertexProgramTest;
 import org.apache.tinkerpop.gremlin.process.computer.util.ComputerDataStrategyTest;
-import org.apache.tinkerpop.gremlin.process.graph.traversal.step.branch.*;
-import org.apache.tinkerpop.gremlin.process.graph.traversal.step.filter.*;
-import org.apache.tinkerpop.gremlin.process.graph.traversal.step.map.*;
-import org.apache.tinkerpop.gremlin.process.graph.traversal.step.sideEffect.*;
+import org.apache.tinkerpop.gremlin.process.graph.traversal.step.branch.BranchTest;
+import org.apache.tinkerpop.gremlin.process.graph.traversal.step.branch.ChooseTest;
+import org.apache.tinkerpop.gremlin.process.graph.traversal.step.branch.LocalTest;
+import org.apache.tinkerpop.gremlin.process.graph.traversal.step.branch.RepeatTest;
+import org.apache.tinkerpop.gremlin.process.graph.traversal.step.branch.UnionTest;
+import org.apache.tinkerpop.gremlin.process.graph.traversal.step.filter.AndTest;
+import org.apache.tinkerpop.gremlin.process.graph.traversal.step.filter.CoinTest;
+import org.apache.tinkerpop.gremlin.process.graph.traversal.step.filter.CyclicPathTest;
+import org.apache.tinkerpop.gremlin.process.graph.traversal.step.filter.DedupTest;
+import org.apache.tinkerpop.gremlin.process.graph.traversal.step.filter.ExceptTest;
+import org.apache.tinkerpop.gremlin.process.graph.traversal.step.filter.FilterTest;
+import org.apache.tinkerpop.gremlin.process.graph.traversal.step.filter.HasNotTest;
+import org.apache.tinkerpop.gremlin.process.graph.traversal.step.filter.HasTest;
+import org.apache.tinkerpop.gremlin.process.graph.traversal.step.filter.IsTest;
+import org.apache.tinkerpop.gremlin.process.graph.traversal.step.filter.OrTest;
+import org.apache.tinkerpop.gremlin.process.graph.traversal.step.filter.RangeTest;
+import org.apache.tinkerpop.gremlin.process.graph.traversal.step.filter.RetainTest;
+import org.apache.tinkerpop.gremlin.process.graph.traversal.step.filter.SampleTest;
+import org.apache.tinkerpop.gremlin.process.graph.traversal.step.filter.SimplePathTest;
+import org.apache.tinkerpop.gremlin.process.graph.traversal.step.filter.WhereTest;
+import org.apache.tinkerpop.gremlin.process.graph.traversal.step.map.BackTest;
+import org.apache.tinkerpop.gremlin.process.graph.traversal.step.map.CoalesceTest;
+import org.apache.tinkerpop.gremlin.process.graph.traversal.step.map.CountTest;
+import org.apache.tinkerpop.gremlin.process.graph.traversal.step.map.FoldTest;
+import org.apache.tinkerpop.gremlin.process.graph.traversal.step.map.MapTest;
+import org.apache.tinkerpop.gremlin.process.graph.traversal.step.map.MaxTest;
+import org.apache.tinkerpop.gremlin.process.graph.traversal.step.map.MeanTest;
+import org.apache.tinkerpop.gremlin.process.graph.traversal.step.map.MinTest;
+import org.apache.tinkerpop.gremlin.process.graph.traversal.step.map.OrderTest;
+import org.apache.tinkerpop.gremlin.process.graph.traversal.step.map.PathTest;
+import org.apache.tinkerpop.gremlin.process.graph.traversal.step.map.PropertiesTest;
+import org.apache.tinkerpop.gremlin.process.graph.traversal.step.map.SelectTest;
+import org.apache.tinkerpop.gremlin.process.graph.traversal.step.map.SumTest;
+import org.apache.tinkerpop.gremlin.process.graph.traversal.step.map.UnfoldTest;
+import org.apache.tinkerpop.gremlin.process.graph.traversal.step.map.ValueMapTest;
+import org.apache.tinkerpop.gremlin.process.graph.traversal.step.map.VertexTest;
+import org.apache.tinkerpop.gremlin.process.graph.traversal.step.sideEffect.AggregateTest;
+import org.apache.tinkerpop.gremlin.process.graph.traversal.step.sideEffect.GroupCountTest;
+import org.apache.tinkerpop.gremlin.process.graph.traversal.step.sideEffect.GroupTest;
+import org.apache.tinkerpop.gremlin.process.graph.traversal.step.sideEffect.InjectTest;
+import org.apache.tinkerpop.gremlin.process.graph.traversal.step.sideEffect.ProfileTest;
+import org.apache.tinkerpop.gremlin.process.graph.traversal.step.sideEffect.SackTest;
+import org.apache.tinkerpop.gremlin.process.graph.traversal.step.sideEffect.SideEffectCapTest;
+import org.apache.tinkerpop.gremlin.process.graph.traversal.step.sideEffect.StoreTest;
+import org.apache.tinkerpop.gremlin.process.graph.traversal.step.sideEffect.TreeTest;
 import org.apache.tinkerpop.gremlin.process.graph.traversal.strategy.TraversalVerificationStrategyTest;
 import org.junit.runners.model.InitializationError;
 import org.junit.runners.model.RunnerBuilder;