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/23 17:44:04 UTC
tinkerpop git commit: fix to GryoSerializers now that GraphSON2.0 is
used.
Repository: tinkerpop
Updated Branches:
refs/heads/TINKERPOP-1278 d25e29b41 -> 7b8bcdb12
fix to GryoSerializers now that GraphSON2.0 is used.
Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/7b8bcdb1
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/7b8bcdb1
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/7b8bcdb1
Branch: refs/heads/TINKERPOP-1278
Commit: 7b8bcdb1266ac13c3e03216379be995a6094dc35
Parents: d25e29b
Author: Marko A. Rodriguez <ok...@gmail.com>
Authored: Tue Aug 23 11:44:02 2016 -0600
Committer: Marko A. Rodriguez <ok...@gmail.com>
Committed: Tue Aug 23 11:44:02 2016 -0600
----------------------------------------------------------------------
.../structure/io/gryo/GryoSerializers.java | 3 ++-
.../jython/gremlin_python/process/graphson.py | 24 +++++++++++---------
2 files changed, 15 insertions(+), 12 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/7b8bcdb1/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io/gryo/GryoSerializers.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io/gryo/GryoSerializers.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io/gryo/GryoSerializers.java
index e785948..f543446 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io/gryo/GryoSerializers.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io/gryo/GryoSerializers.java
@@ -26,6 +26,7 @@ import org.apache.tinkerpop.gremlin.structure.Property;
import org.apache.tinkerpop.gremlin.structure.Vertex;
import org.apache.tinkerpop.gremlin.structure.VertexProperty;
import org.apache.tinkerpop.gremlin.structure.io.graphson.GraphSONMapper;
+import org.apache.tinkerpop.gremlin.structure.io.graphson.GraphSONVersion;
import org.apache.tinkerpop.gremlin.structure.io.gryo.kryoshim.InputShim;
import org.apache.tinkerpop.gremlin.structure.io.gryo.kryoshim.KryoShim;
import org.apache.tinkerpop.gremlin.structure.io.gryo.kryoshim.OutputShim;
@@ -124,7 +125,7 @@ public final class GryoSerializers {
}
public final static class BytecodeSerializer implements SerializerShim<Bytecode> {
- private static final GraphSONMapper mapper = GraphSONMapper.build().create();
+ private static final GraphSONMapper mapper = GraphSONMapper.build().version(GraphSONVersion.V2_0).create();
@Override
public <O extends OutputShim> void write(final KryoShim<?, O> kryo, final O output, final Bytecode bytecode) {
try {
http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/7b8bcdb1/gremlin-python/src/main/jython/gremlin_python/process/graphson.py
----------------------------------------------------------------------
diff --git a/gremlin-python/src/main/jython/gremlin_python/process/graphson.py b/gremlin-python/src/main/jython/gremlin_python/process/graphson.py
index fcc381a..2b5ff5c 100644
--- a/gremlin-python/src/main/jython/gremlin_python/process/graphson.py
+++ b/gremlin-python/src/main/jython/gremlin_python/process/graphson.py
@@ -28,6 +28,12 @@ from .traversal import P
from .traversal import Traversal
from .. import statics
+'''
+Symbol Table
+'''
+
+_TYPE = "@type"
+_VALUE = "@value"
class GraphSONWriter(object):
@staticmethod
@@ -56,7 +62,6 @@ class GraphSONSerializer(object):
class BytecodeSerializer(GraphSONSerializer):
def _dictify(self, bytecode):
dict = {}
- dict["@type"] = "Bytecode"
sources = []
for instruction in bytecode.source_instructions:
inst = []
@@ -75,43 +80,40 @@ class BytecodeSerializer(GraphSONSerializer):
dict["source"] = sources
if len(steps) > 0:
dict["step"] = steps
- return dict
+ return {_TYPE: "bytecode", _VALUE: dict}
class EnumSerializer(GraphSONSerializer):
def _dictify(self, enum):
dict = {}
- dict["@type"] = _SymbolHelper.toGremlin(type(enum).__name__)
- dict["value"] = _SymbolHelper.toGremlin(str(enum.name))
+ dict[_TYPE] = _SymbolHelper.toGremlin(type(enum).__name__)
+ dict[_VALUE] = _SymbolHelper.toGremlin(str(enum.name))
return dict
class PSerializer(GraphSONSerializer):
def _dictify(self, p):
dict = {}
- dict["@type"] = "P"
dict["predicate"] = p.operator
if p.other is None:
dict["value"] = GraphSONWriter._dictify(p.value)
else:
dict["value"] = [GraphSONWriter._dictify(p.value), GraphSONWriter._dictify(p.other)]
- return dict
+ return {_TYPE: "P", _VALUE: dict}
class BindingSerializer(GraphSONSerializer):
def _dictify(self, binding):
dict = {}
- dict["@type"] = "Binding"
- dict["variable"] = binding.variable
+ dict["key"] = binding.variable
dict["value"] = GraphSONWriter._dictify(binding.value)
- return dict
+ return {_TYPE: "binding", _VALUE: dict}
class LambdaSerializer(GraphSONSerializer):
def _dictify(self, lambdaObject):
lambdaResult = lambdaObject()
dict = {}
- dict["@type"] = "Lambda"
script = lambdaResult if isinstance(lambdaResult, str) else lambdaResult[0]
language = statics.default_lambda_language if isinstance(lambdaResult, str) else lambdaResult[1]
dict["value"] = script
@@ -123,7 +125,7 @@ class LambdaSerializer(GraphSONSerializer):
dict["arguments"] = eval(dict["value"]).func_code.co_argcount
else:
dict["arguments"] = -1
- return dict
+ return {_TYPE: "lambda", _VALUE: dict}
class TraversalSerializer(BytecodeSerializer):