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 2016/08/25 19:18:09 UTC

tinkerpop git commit: created a TraversalSideEffects class in traversal.py that RemoteTraversalSideEffects inherits from.

Repository: tinkerpop
Updated Branches:
  refs/heads/TINKERPOP-1278 711d24017 -> 5d446f3cd


created a TraversalSideEffects class in traversal.py that RemoteTraversalSideEffects inherits from.


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

Branch: refs/heads/TINKERPOP-1278
Commit: 5d446f3cdd110ec78a9c5de169df9fae9617ef15
Parents: 711d240
Author: Marko A. Rodriguez <ok...@gmail.com>
Authored: Thu Aug 25 13:18:03 2016 -0600
Committer: Marko A. Rodriguez <ok...@gmail.com>
Committed: Thu Aug 25 13:18:03 2016 -0600

----------------------------------------------------------------------
 .../gremlin/python/TraversalSourceGenerator.groovy  | 16 +++++++++++++++-
 .../gremlin_python/driver/remote_connection.py      |  9 ++-------
 .../main/jython/gremlin_python/process/traversal.py | 16 +++++++++++++++-
 3 files changed, 32 insertions(+), 9 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/5d446f3c/gremlin-python/src/main/groovy/org/apache/tinkerpop/gremlin/python/TraversalSourceGenerator.groovy
----------------------------------------------------------------------
diff --git a/gremlin-python/src/main/groovy/org/apache/tinkerpop/gremlin/python/TraversalSourceGenerator.groovy b/gremlin-python/src/main/groovy/org/apache/tinkerpop/gremlin/python/TraversalSourceGenerator.groovy
index ba2edf7..a27fd40 100644
--- a/gremlin-python/src/main/groovy/org/apache/tinkerpop/gremlin/python/TraversalSourceGenerator.groovy
+++ b/gremlin-python/src/main/groovy/org/apache/tinkerpop/gremlin/python/TraversalSourceGenerator.groovy
@@ -64,7 +64,7 @@ class Traversal(object):
         self.graph = graph
         self.traversal_strategies = traversal_strategies
         self.bytecode = bytecode
-        self.side_effects = {}
+        self.side_effects = TraversalSideEffects()
         self.traversers = None
         self.last_traverser = None
     def __repr__(self):
@@ -187,6 +187,20 @@ class Traverser(object):
         return str(self.object)
 
 '''
+TRAVERSAL SIDE-EFFECTS
+'''
+
+class TraversalSideEffects(object):
+    def keys(self):
+        return set()
+    def get(self, key):
+        raise KeyError(key)
+    def __getitem__(self, key):
+        return self.get(key)
+    def __repr__(self):
+        return "sideEffects[size:" + str(len(self.keys())) + "]"
+
+'''
 TRAVERSAL STRATEGIES
 '''
 

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/5d446f3c/gremlin-python/src/main/jython/gremlin_python/driver/remote_connection.py
----------------------------------------------------------------------
diff --git a/gremlin-python/src/main/jython/gremlin_python/driver/remote_connection.py b/gremlin-python/src/main/jython/gremlin_python/driver/remote_connection.py
index a2c973c..a659ebc 100644
--- a/gremlin-python/src/main/jython/gremlin_python/driver/remote_connection.py
+++ b/gremlin-python/src/main/jython/gremlin_python/driver/remote_connection.py
@@ -21,6 +21,7 @@ import six
 
 from ..process.traversal import Traversal
 from ..process.traversal import TraversalStrategy
+from ..process.traversal import TraversalSideEffects
 
 __author__ = 'Marko A. Rodriguez (http://markorodriguez.com)'
 
@@ -52,7 +53,7 @@ class RemoteTraversal(Traversal):
         self.side_effects = side_effects
 
 
-class RemoteTraversalSideEffects(object):
+class RemoteTraversalSideEffects(TraversalSideEffects):
     def __init__(self, keys_lambda, value_lambda):
         self.keys_lambda = keys_lambda
         self.value_lambda = value_lambda
@@ -63,12 +64,6 @@ class RemoteTraversalSideEffects(object):
     def get(self, key):
         return self.value_lambda(key)
 
-    def __getitem__(self, key):
-        return self.get(key)
-
-    def __repr__(self):
-        return "sideEffects[size:" + str(len(self.keys())) + "]"
-
 
 class RemoteStrategy(TraversalStrategy):
     def __init__(self, remote_connection):

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/5d446f3c/gremlin-python/src/main/jython/gremlin_python/process/traversal.py
----------------------------------------------------------------------
diff --git a/gremlin-python/src/main/jython/gremlin_python/process/traversal.py b/gremlin-python/src/main/jython/gremlin_python/process/traversal.py
index c9fa482..7b9d4d5 100644
--- a/gremlin-python/src/main/jython/gremlin_python/process/traversal.py
+++ b/gremlin-python/src/main/jython/gremlin_python/process/traversal.py
@@ -26,7 +26,7 @@ class Traversal(object):
         self.graph = graph
         self.traversal_strategies = traversal_strategies
         self.bytecode = bytecode
-        self.side_effects = {}
+        self.side_effects = TraversalSideEffects()
         self.traversers = None
         self.last_traverser = None
     def __repr__(self):
@@ -245,6 +245,20 @@ class Traverser(object):
         return str(self.object)
 
 '''
+TRAVERSAL SIDE-EFFECTS
+'''
+
+class TraversalSideEffects(object):
+    def keys(self):
+        return set()
+    def get(self, key):
+        raise KeyError(key)
+    def __getitem__(self, key):
+        return self.get(key)
+    def __repr__(self):
+        return "sideEffects[size:" + str(len(self.keys())) + "]"
+
+'''
 TRAVERSAL STRATEGIES
 '''