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/06/10 00:12:22 UTC

incubator-tinkerpop git commit: ScopeP no longer has a reference to Scoping step -- its passed in on bind(). Less potential for problems when clone()ing.

Repository: incubator-tinkerpop
Updated Branches:
  refs/heads/master 78756071b -> 35b9511b6


ScopeP no longer has a reference to Scoping step -- its passed in on bind(). Less potential for problems when clone()ing.


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

Branch: refs/heads/master
Commit: 35b9511b69d82733923054613b90b9d6eec3cdbd
Parents: 7875607
Author: Marko A. Rodriguez <ok...@gmail.com>
Authored: Tue Jun 9 16:12:19 2015 -0600
Committer: Marko A. Rodriguez <ok...@gmail.com>
Committed: Tue Jun 9 16:12:19 2015 -0600

----------------------------------------------------------------------
 .../gremlin/process/traversal/step/filter/WhereStep.java     | 6 +++---
 .../tinkerpop/gremlin/process/traversal/util/ScopeP.java     | 8 +++-----
 2 files changed, 6 insertions(+), 8 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/35b9511b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/WhereStep.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/WhereStep.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/WhereStep.java
index c669a7e..9f033b8 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/WhereStep.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/WhereStep.java
@@ -56,7 +56,7 @@ public final class WhereStep<S> extends FilterStep<S> implements TraversalParent
             // START STEP
             startKey.ifPresent(key -> whereTraversal.addStep(new SelectOneStep<>(whereTraversal, scope, startKey.get())));
             // END STEP
-            whereTraversal.addStep(new IsStep<>(whereTraversal, new ScopeP<>(predicate, this)));
+            whereTraversal.addStep(new IsStep<>(whereTraversal, new ScopeP<>(predicate)));
             this.predicate = new TraversalP(whereTraversal, false);
         } else {                                                                     // a TraversalP, AndP, or OrP
             for (final Traversal.Admin<?, ?> whereTraversal : this.predicate.getTraversals()) {
@@ -74,7 +74,7 @@ public final class WhereStep<S> extends FilterStep<S> implements TraversalParent
                         throw new IllegalArgumentException("The end step of a where()-traversal predicate can only have one label: " + endStep);
                     final String label = endStep.getLabels().iterator().next();
                     endStep.removeLabel(label);
-                    whereTraversal.addStep(new IsStep<>(whereTraversal, new ScopeP<>(P.eq(label), this)));
+                    whereTraversal.addStep(new IsStep<>(whereTraversal, new ScopeP<>(P.eq(label))));
                 }
             }
         }
@@ -90,7 +90,7 @@ public final class WhereStep<S> extends FilterStep<S> implements TraversalParent
         for (final Traversal.Admin<?, ?> traversal : this.predicate.getTraversals()) {
             final Step<?, ?> endStep = traversal.getEndStep();
             if (endStep instanceof IsStep && ((IsStep) endStep).getPredicate() instanceof ScopeP)
-                ((ScopeP) ((IsStep) endStep).getPredicate()).bind(traverser);
+                ((ScopeP) ((IsStep) endStep).getPredicate()).bind(this, traverser);
         }
         return this.predicate.getBiPredicate().test(traverser, null);
     }

http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/35b9511b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/util/ScopeP.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/util/ScopeP.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/util/ScopeP.java
index 14a84f0..1b18a28 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/util/ScopeP.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/util/ScopeP.java
@@ -36,16 +36,14 @@ public final class ScopeP<V> extends P<V> {
     private static final Object EMPTY_OBJECT = new Object();
 
     private final String key;
-    private final Scoping scopingStep;
 
-    public ScopeP(final P<?> predicate, final Scoping scopingStep) {
+    public ScopeP(final P<?> predicate) {
         super((BiPredicate) predicate.getBiPredicate(), (V) EMPTY_OBJECT);
         this.key = predicate.getValue() instanceof Collection ? ((Collection<String>) predicate.getValue()).iterator().next() : predicate.getValue().toString();   // HACK: for within("x") as it sees that as an array
-        this.scopingStep = scopingStep;
     }
 
-    public void bind(final Traverser.Admin<?> traverser) {
-        this.value = (V) this.scopingStep.getOptionalScopeValueByKey(this.key, traverser).orElse(null);
+    public void bind(final Scoping scopingStep, final Traverser.Admin<?> traverser) {
+        this.value = (V) scopingStep.getOptionalScopeValueByKey(this.key, traverser).orElse(null);
     }
 
     @Override