Repository: tinkerpop Updated Branches: refs/heads/master 00949d4e9 -> 31044a280
got Neo4jGraphStepStrategy up to snuff with latest work in InlineStrategyFilter and also, not using stream(). Minor nothing. CTR. Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/31044a28 Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/31044a28 Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/31044a28 Branch: refs/heads/master Commit: 31044a280a7e9cd6aa967a2e981ec14e26955342 Parents: 00949d4 Author: Marko A. Rodriguez <[email protected]> Authored: Mon Oct 10 11:01:21 2016 -0600 Committer: Marko A. Rodriguez <[email protected]> Committed: Mon Oct 10 11:01:21 2016 -0600 ---------------------------------------------------------------------- .../optimization/Neo4jGraphStepStrategy.java | 16 +++++++++------- .../optimization/TinkerGraphStepStrategy.java | 3 ++- 2 files changed, 11 insertions(+), 8 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/31044a28/neo4j-gremlin/src/main/java/org/apache/tinkerpop/gremlin/neo4j/process/traversal/strategy/optimization/Neo4jGraphStepStrategy.java ---------------------------------------------------------------------- diff --git a/neo4j-gremlin/src/main/java/org/apache/tinkerpop/gremlin/neo4j/process/traversal/strategy/optimization/Neo4jGraphStepStrategy.java b/neo4j-gremlin/src/main/java/org/apache/tinkerpop/gremlin/neo4j/process/traversal/strategy/optimization/Neo4jGraphStepStrategy.java index eed7b15..071c248 100644 --- a/neo4j-gremlin/src/main/java/org/apache/tinkerpop/gremlin/neo4j/process/traversal/strategy/optimization/Neo4jGraphStepStrategy.java +++ b/neo4j-gremlin/src/main/java/org/apache/tinkerpop/gremlin/neo4j/process/traversal/strategy/optimization/Neo4jGraphStepStrategy.java @@ -23,7 +23,9 @@ import org.apache.tinkerpop.gremlin.process.traversal.Step; import org.apache.tinkerpop.gremlin.process.traversal.Traversal; import org.apache.tinkerpop.gremlin.process.traversal.TraversalStrategy; import org.apache.tinkerpop.gremlin.process.traversal.step.HasContainerHolder; +import org.apache.tinkerpop.gremlin.process.traversal.step.filter.HasStep; import org.apache.tinkerpop.gremlin.process.traversal.step.map.GraphStep; +import org.apache.tinkerpop.gremlin.process.traversal.step.util.HasContainer; import org.apache.tinkerpop.gremlin.process.traversal.strategy.AbstractTraversalStrategy; import org.apache.tinkerpop.gremlin.process.traversal.util.TraversalHelper; @@ -40,20 +42,20 @@ public final class Neo4jGraphStepStrategy extends AbstractTraversalStrategy<Trav @Override public void apply(final Traversal.Admin<?, ?> traversal) { - TraversalHelper.getStepsOfClass(GraphStep.class, traversal).forEach(originalGraphStep -> { + for (final GraphStep originalGraphStep : TraversalHelper.getStepsOfClass(GraphStep.class, traversal)) { final Neo4jGraphStep<?, ?> neo4jGraphStep = new Neo4jGraphStep<>(originalGraphStep); - TraversalHelper.replaceStep(originalGraphStep, (Step) neo4jGraphStep, traversal); + TraversalHelper.replaceStep(originalGraphStep, neo4jGraphStep, traversal); Step<?, ?> currentStep = neo4jGraphStep.getNextStep(); - while (currentStep instanceof HasContainerHolder) { - ((HasContainerHolder) currentStep).getHasContainers().forEach(hasContainer -> { + while (currentStep instanceof HasStep) { + for (final HasContainer hasContainer : ((HasContainerHolder) currentStep).getHasContainers()) { if (!GraphStep.processHasContainerIds(neo4jGraphStep, hasContainer)) neo4jGraphStep.addHasContainer(hasContainer); - }); - currentStep.getLabels().forEach(neo4jGraphStep::addLabel); + } + TraversalHelper.copyLabels(currentStep, neo4jGraphStep, false); traversal.removeStep(currentStep); currentStep = currentStep.getNextStep(); } - }); + } } public static Neo4jGraphStepStrategy instance() { http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/31044a28/tinkergraph-gremlin/src/main/java/org/apache/tinkerpop/gremlin/tinkergraph/process/traversal/strategy/optimization/TinkerGraphStepStrategy.java ---------------------------------------------------------------------- diff --git a/tinkergraph-gremlin/src/main/java/org/apache/tinkerpop/gremlin/tinkergraph/process/traversal/strategy/optimization/TinkerGraphStepStrategy.java b/tinkergraph-gremlin/src/main/java/org/apache/tinkerpop/gremlin/tinkergraph/process/traversal/strategy/optimization/TinkerGraphStepStrategy.java index 5ba68eb..98601f6 100644 --- a/tinkergraph-gremlin/src/main/java/org/apache/tinkerpop/gremlin/tinkergraph/process/traversal/strategy/optimization/TinkerGraphStepStrategy.java +++ b/tinkergraph-gremlin/src/main/java/org/apache/tinkerpop/gremlin/tinkergraph/process/traversal/strategy/optimization/TinkerGraphStepStrategy.java @@ -22,6 +22,7 @@ import org.apache.tinkerpop.gremlin.process.traversal.Step; import org.apache.tinkerpop.gremlin.process.traversal.Traversal; import org.apache.tinkerpop.gremlin.process.traversal.TraversalStrategy; import org.apache.tinkerpop.gremlin.process.traversal.step.HasContainerHolder; +import org.apache.tinkerpop.gremlin.process.traversal.step.filter.HasStep; import org.apache.tinkerpop.gremlin.process.traversal.step.map.GraphStep; import org.apache.tinkerpop.gremlin.process.traversal.step.util.HasContainer; import org.apache.tinkerpop.gremlin.process.traversal.strategy.AbstractTraversalStrategy; @@ -47,7 +48,7 @@ public final class TinkerGraphStepStrategy extends AbstractTraversalStrategy<Tra final TinkerGraphStep<?, ?> tinkerGraphStep = new TinkerGraphStep<>(originalGraphStep); TraversalHelper.replaceStep(originalGraphStep, tinkerGraphStep, traversal); Step<?, ?> currentStep = tinkerGraphStep.getNextStep(); - while (currentStep instanceof HasContainerHolder) { + while (currentStep instanceof HasStep) { for (final HasContainer hasContainer : ((HasContainerHolder) currentStep).getHasContainers()) { if (!GraphStep.processHasContainerIds(tinkerGraphStep, hasContainer)) tinkerGraphStep.addHasContainer(hasContainer);
