public dynamic Objectify(JToken graphsonObject, IGraphSONReader reader) { var bulkObj = reader.ToObject(graphsonObject["bulk"]); var valueObj = reader.ToObject(graphsonObject["value"]); return(new Gremlin.Net.Process.Traversal.Traverser(valueObj, bulkObj)); }
public dynamic Objectify(JToken token, Func <JToken, GraphNode> factory, IGraphSONReader reader) { ICollection <ICollection <string> > labels = null; ICollection <GraphNode> objects = null; if (token["labels"] is JArray labelsProp) { // labels prop is a js Array<Array<string>> labels = labelsProp .Select(node => { var arrayNode = node as JArray; if (arrayNode == null) { throw new InvalidOperationException($"Cannot create a Path from {token}"); } return(new HashSet <string>(arrayNode.Select(n => n.ToString()))); }) .ToArray(); } if (token["objects"] is JArray objectsProp) { // labels prop is a js Array<object> objects = objectsProp.Select(o => ToGraphNode(factory, o)).ToArray(); } return(new Path(labels, objects)); }
public dynamic Objectify(JToken token, Func <JToken, GraphNode> factory, IGraphSONReader reader) { return(new Property( ToString(token, "key", true), ToGraphNode(factory, token, "value"), ToGraphNode(factory, token, "element"))); }
public dynamic Objectify(JToken graphsonObject, IGraphSONReader reader) { var id = reader.ToObject(graphsonObject["id"]); var label = (string)graphsonObject["label"] ?? Gremlin.Net.Structure.Vertex.DefaultLabel; return(new Gremlin.Net.Structure.Vertex(id, label)); }
private dynamic ReadTypedValue(JToken typedValue, IGraphSONReader reader) { var value = typedValue[GraphSONTokens.ValueKey]; if (IsNullOrUndefined(value)) { return(null); } var graphSONType = (string)typedValue[GraphSONTokens.TypeKey]; if (_customDeserializers.TryGetValue(graphSONType, out var deserializer)) { return(deserializer.Objectify(typedValue[GraphSONTokens.ValueKey], reader)); } if (_structureDeserializers.TryGetValue(graphSONType, out var structureDeserializer)) { return(structureDeserializer.Objectify(typedValue[GraphSONTokens.ValueKey], GraphNodeFactory, reader)); } if (_deserializers.TryGetValue(graphSONType, out deserializer)) { return(deserializer.Objectify(typedValue[GraphSONTokens.ValueKey], reader)); } throw new InvalidOperationException($"Deserializer for \"{graphSONType}\" not found"); }
public dynamic Objectify(JToken graphsonObject, IGraphSONReader reader) { var key = (string)graphsonObject["key"]; var value = reader.ToObject(graphsonObject["value"]); var element = graphsonObject["element"] != null?reader.ToObject(graphsonObject["element"]) : null; return(new Gremlin.Net.Structure.Property(key, value, element)); }
public dynamic Objectify(JToken graphsonObject, IGraphSONReader reader) { var months = (int)reader.ToObject(graphsonObject["months"]); var days = (int)reader.ToObject(graphsonObject["days"]); var nanos = (long)reader.ToObject(graphsonObject["nanos"]); return(new Duration(months, days, nanos)); }
public dynamic Objectify(JToken graphsonObject, IGraphSONReader reader) { var labels = graphsonObject["labels"] .Select(readObjLabels => new HashSet <string>(readObjLabels.Select(l => (string)l))) .ToList <ISet <string> >(); var objects = graphsonObject["objects"].Select(o => reader.ToObject(o)).ToList(); return(new Gremlin.Net.Structure.Path(labels, objects)); }
public dynamic Objectify(JToken graphsonObject, IGraphSONReader reader) { var id = reader.ToObject(graphsonObject["id"]); var label = (string)graphsonObject["label"]; var value = reader.ToObject(graphsonObject["value"]); var vertex = graphsonObject["vertex"] != null ? new Gremlin.Net.Structure.Vertex(reader.ToObject(graphsonObject["vertex"])) : null; return(new VertexProperty(id, label, value, vertex)); }
public dynamic Objectify(JToken graphsonObject, IGraphSONReader reader) { var str = TokenToString(graphsonObject); if (str == null) { return(null); } return(FromString(str)); }
public dynamic Objectify(JToken token, Func <JToken, GraphNode> factory, IGraphSONReader reader) { var graphNode = ToGraphNode(factory, token); return(new VertexProperty( graphNode.Get <GraphNode>("id", true), graphNode.Get <string>("label"), graphNode.Get <GraphNode>("value", true), graphNode.Get <GraphNode>("vertex"), new Dictionary <string, GraphNode>(0))); }
public dynamic Objectify(JToken graphsonObject, IGraphSONReader reader) { var jArray = graphsonObject as JArray; if (jArray == null) { return(new HashSet <object>()); } // ISet<object> return(new HashSet <object>(jArray.Select(reader.ToObject))); }
public CustomGraphSON3Reader( Func <JToken, GraphNode> graphNodeFactory, IReadOnlyDictionary <string, IGraphSONDeserializer> customDeserializers, IGraphSONReader reader) : base( CustomGraphSON3Reader.Deserializers, CustomGraphSON3Reader.StructureDeserializers, graphNodeFactory, customDeserializers, reader) { }
public dynamic Objectify(JToken graphsonObject, IGraphSONReader reader) { // "labels" is a object[] where each item is ISet<object> var labelProperty = (object[])reader.ToObject(graphsonObject["labels"]); var labels = labelProperty .Select(x => new HashSet <string>(((ISet <object>)x).Cast <string>())) .ToList <ISet <string> >(); // "objects" is an object[] object[] objects = reader.ToObject(graphsonObject["objects"]); return(new Gremlin.Net.Structure.Path(labels, objects)); }
public dynamic Objectify(JToken graphsonObject, IGraphSONReader reader) { var outVId = reader.ToObject(graphsonObject["outV"]); var outVLabel = (string)(graphsonObject["outVLabel"] ?? Gremlin.Net.Structure.Vertex.DefaultLabel); var outV = new Gremlin.Net.Structure.Vertex(outVId, outVLabel); var inVId = reader.ToObject(graphsonObject["inV"]); var inVLabel = (string)(graphsonObject["inVLabel"] ?? Gremlin.Net.Structure.Vertex.DefaultLabel); var inV = new Gremlin.Net.Structure.Vertex(inVId, inVLabel); var edgeId = reader.ToObject(graphsonObject["id"]); var edgeLabel = (string)graphsonObject["label"] ?? "edge"; return(new Gremlin.Net.Structure.Edge(edgeId, outV, edgeLabel, inV)); }
protected CustomGraphSON2Reader( Dictionary <string, IGraphSONDeserializer> deserializers, Dictionary <string, IGraphSONStructureDeserializer> structureDeserializers, Func <JToken, GraphNode> graphNodeFactory, IReadOnlyDictionary <string, IGraphSONDeserializer> customDeserializers, IGraphSONReader reader) { _deserializers = deserializers; _structureDeserializers = structureDeserializers; _reader = reader; _customDeserializers = customDeserializers; GraphNodeFactory = graphNodeFactory; }
public dynamic Objectify(JToken graphsonObject, IGraphSONReader reader) { var jArray = graphsonObject as JArray; if (jArray == null) { return(new Dictionary <object, object>(0)); } var result = new Dictionary <object, object>(jArray.Count / 2); for (var i = 0; i < jArray.Count; i += 2) { result[reader.ToObject(jArray[i])] = reader.ToObject(jArray[i + 1]); } // IDictionary<object, object> return(result); }
public dynamic Objectify(JToken graphsonObject, IGraphSONReader reader) { var jArray = graphsonObject as JArray; if (jArray == null) { return(ListSerializer.EmptyList); } var result = new object[jArray.Count]; for (var i = 0; i < result.Length; i++) { result[i] = reader.ToObject(jArray[i]); } // object[] implements IList<object> return(result); }
public dynamic Objectify(JToken token, Func <JToken, GraphNode> factory, IGraphSONReader reader) { IDictionary <string, GraphNode> properties = null; var tokenProperties = !(token is JObject jobj) ? null : jobj["properties"]; if (tokenProperties != null && tokenProperties is JObject propertiesJsonProp) { properties = propertiesJsonProp .Properties() .ToDictionary(prop => prop.Name, prop => ToGraphNode(factory, prop.Value)); } var label = ToString(token, "label", false) ?? VertexDeserializer.DefaultLabel; return(new Vertex( ToGraphNode(factory, token, "id", true), label, properties ?? new Dictionary <string, GraphNode>(0))); }
public dynamic Objectify(JToken graphsonObject, IGraphSONReader reader) { var base64String = graphsonObject.ToObject <string>(); return(Convert.FromBase64String(base64String)); }
public dynamic Objectify(JToken graphsonObject, Func <JToken, GraphNode> factory, IGraphSONReader reader) { ICollection <ICollection <string> > labels = null; ICollection <GraphNode> objects = null; if (graphsonObject is JObject jObj) { labels = ParseLabels(jObj); objects = ParseObjects(jObj, factory); } return(new Path(labels, objects)); }
public dynamic Objectify(JToken graphsonObject, IGraphSONReader reader) { return(graphsonObject.ToObject <Guid>()); }
public dynamic Objectify(JToken graphsonObject, IGraphSONReader reader) { return(Gremlin.Net.Process.Traversal.Direction.GetByValue(graphsonObject.ToString())); }
public dynamic Objectify(JToken graphsonObject, IGraphSONReader reader) { var bigInteger = graphsonObject.ToObject <string>(); return(BigInteger.Parse(bigInteger)); }
public dynamic Objectify(JToken graphsonObject, IGraphSONReader reader) { return(graphsonObject.ToObject(HandledType)); }
public dynamic Objectify(JToken graphsonObject, IGraphSONReader reader) { return(Direction.GetByValue(graphsonObject.ToString())); }
public dynamic Objectify(JToken graphsonObject, IGraphSONReader reader) { var milliseconds = graphsonObject.ToObject <long>(); return(TinkerpopTimestampDeserializer.UnixStart.AddTicks(TimeSpan.TicksPerMillisecond * milliseconds)); }
public dynamic Objectify(JToken graphsonObject, Func <JToken, GraphNode> factory, IGraphSONReader reader) { long bulkObj = reader.ToObject(graphsonObject["bulk"]); var valueObj = ToGraphNode(factory, graphsonObject, "value"); return(new Traverser(valueObj, bulkObj)); }