Пример #1
0
        public dynamic Objectify(JsonElement graphsonObject, GraphSONReader reader)
        {
            var bulkObj  = reader.ToObject(graphsonObject.GetProperty("bulk"));
            var valueObj = reader.ToObject(graphsonObject.GetProperty("value"));

            return(new Traverser(valueObj, bulkObj));
        }
Пример #2
0
        public dynamic Objectify(JToken graphsonObject, GraphSONReader reader)
        {
            var bulkObj  = reader.ToObject(graphsonObject["bulk"]);
            var valueObj = reader.ToObject(graphsonObject["value"]);

            return(new Traverser(valueObj, bulkObj));
        }
        public dynamic Objectify(JToken graphsonObject, GraphSONReader reader)
        {
            var key     = (string)graphsonObject["key"];
            var value   = reader.ToObject(graphsonObject["value"]);
            var element = graphsonObject["element"] != null?reader.ToObject(graphsonObject["element"]) : null;

            return(new Property(key, value, element));
        }
Пример #4
0
        public dynamic Objectify(JsonElement graphsonObject, GraphSONReader reader)
        {
            var key     = graphsonObject.GetProperty("key").GetString();
            var value   = reader.ToObject(graphsonObject.GetProperty("value"));
            var element = graphsonObject.TryGetProperty("element", out var elementProperty)
                ? reader.ToObject(elementProperty)
                : null;

            return(new Property(key, value, element));
        }
Пример #5
0
        public dynamic Objectify(JToken graphsonObject, GraphSONReader reader)
        {
            var id     = reader.ToObject(graphsonObject["id"]);
            var label  = (string)graphsonObject["label"];
            var value  = reader.ToObject(graphsonObject["value"]);
            var vertex = graphsonObject["vertex"] != null
                ? new Vertex(reader.ToObject(graphsonObject["vertex"]))
                : null;

            return(new VertexProperty(id, label, value, vertex));
        }
Пример #6
0
        public dynamic Objectify(JsonElement graphsonObject, GraphSONReader reader)
        {
            var id     = reader.ToObject(graphsonObject.GetProperty("id"));
            var label  = graphsonObject.GetProperty("label").GetString();
            var value  = reader.ToObject(graphsonObject.GetProperty("value"));
            var vertex = graphsonObject.TryGetProperty("vertex", out var vertexProperty)
                ? new Vertex(reader.ToObject(vertexProperty))
                : null;

            return(new VertexProperty(id, label, value, vertex));
        }
Пример #7
0
        public dynamic Objectify(JsonElement graphsonObject, GraphSONReader reader)
        {
            // "labels" is a object[] where each item is ISet<object>
            var labelProperty = (object[])reader.ToObject(graphsonObject.GetProperty("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.GetProperty("objects"));
            return(new Path(labels, objects));
        }
Пример #8
0
        public dynamic Objectify(JToken graphsonObject, GraphSONReader reader)
        {
            var outVId    = reader.ToObject(graphsonObject["outV"]);
            var outVLabel = (string)(graphsonObject["outVLabel"] ?? Vertex.DefaultLabel);
            var outV      = new Vertex(outVId, outVLabel);
            var inVId     = reader.ToObject(graphsonObject["inV"]);
            var inVLabel  = (string)(graphsonObject["inVLabel"] ?? Vertex.DefaultLabel);
            var inV       = new Vertex(inVId, inVLabel);
            var edgeId    = reader.ToObject(graphsonObject["id"]);
            var edgeLabel = (string)graphsonObject["label"] ?? "edge";

            return(new Edge(edgeId, outV, edgeLabel, inV));
        }
Пример #9
0
        public dynamic Objectify(JsonElement graphsonObject, GraphSONReader reader)
        {
            if (graphsonObject.ValueKind != JsonValueKind.Array)
            {
                return(new Dictionary <object, object>(0));
            }
            var result = new Dictionary <object, object>(graphsonObject.GetArrayLength() / 2);

            for (var i = 0; i < graphsonObject.GetArrayLength(); i += 2)
            {
                result[reader.ToObject(graphsonObject[i])] = reader.ToObject(graphsonObject[i + 1]);
            }
            // IDictionary<object, object>
            return(result);
        }
        /// <inheritdoc />
        public virtual Task <ResponseMessage <List <object> > > DeserializeMessageAsync(byte[] message)
        {
            if (message == null)
            {
                throw new ArgumentNullException(nameof(message));
            }
            if (message.Length == 0)
            {
                return(Task.FromResult <ResponseMessage <List <object> > >(null));
            }

            var reader          = new Utf8JsonReader(message);
            var responseMessage =
                JsonSerializer.Deserialize <ResponseMessage <JsonElement> >(ref reader, JsonDeserializingOptions);

            if (responseMessage == null)
            {
                return(Task.FromResult <ResponseMessage <List <object> > >(null));
            }
            ;

            var data = _graphSONReader.ToObject(responseMessage.Result.Data);

            return(Task.FromResult(CopyMessageWithNewData(responseMessage, data)));
        }
Пример #11
0
        public dynamic Objectify(JToken graphsonObject, GraphSONReader reader)
        {
            var id    = reader.ToObject(graphsonObject["id"]);
            var label = (string)graphsonObject["label"] ?? Vertex.DefaultLabel;

            return(new Vertex(id, label));
        }
Пример #12
0
        public dynamic Objectify(JToken graphsonObject, GraphSONReader 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);
        }
Пример #13
0
        public dynamic Objectify(JsonElement graphsonObject, GraphSONReader reader)
        {
            var id    = reader.ToObject(graphsonObject.GetProperty("id"));
            var label = graphsonObject.TryGetProperty("label", out var labelProperty)
                ? labelProperty.GetString()
                : Vertex.DefaultLabel;

            return(new Vertex(id, label));
        }
Пример #14
0
        public dynamic Objectify(JsonElement graphsonObject, GraphSONReader reader)
        {
            var outVId    = reader.ToObject(graphsonObject.GetProperty("outV"));
            var outVLabel = graphsonObject.TryGetProperty("outVLabel", out var outVLabelProperty)
                ? outVLabelProperty.GetString()
                : Vertex.DefaultLabel;
            var outV     = new Vertex(outVId, outVLabel);
            var inVId    = reader.ToObject(graphsonObject.GetProperty("inV"));
            var inVLabel = graphsonObject.TryGetProperty("inVLabel", out var inVLabelProperty)
                ? inVLabelProperty.GetString()
                : Vertex.DefaultLabel;
            var inV       = new Vertex(inVId, inVLabel);
            var edgeId    = reader.ToObject(graphsonObject.GetProperty("id"));
            var edgeLabel = graphsonObject.TryGetProperty("label", out var labelProperty)
                ? labelProperty.GetString()
                : "edge";

            return(new Edge(edgeId, outV, edgeLabel, inV));
        }
Пример #15
0
        public dynamic Objectify(JToken graphsonObject, GraphSONReader 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 Path(labels, objects));
        }
Пример #16
0
        public dynamic Objectify(JsonElement graphsonObject, GraphSONReader reader)
        {
            if (graphsonObject.ValueKind != JsonValueKind.Array)
            {
                return(EmptyList);
            }
            var result = new object[graphsonObject.GetArrayLength()];

            for (var i = 0; i < result.Length; i++)
            {
                result[i] = reader.ToObject(graphsonObject[i]);
            }
            // object[] implements IList<object>
            return(result);
        }
Пример #17
0
        public dynamic Objectify(JToken graphsonObject, GraphSONReader reader)
        {
            var jArray = graphsonObject as JArray;

            if (jArray == null)
            {
                return(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);
        }
Пример #18
0
        public dynamic Objectify(JToken graphsonObject, GraphSONReader reader)
        {
            var jArray = graphsonObject as JArray;

            if (jArray == null)
            {
                return(new List <object>(0));
            }

            // coerce the BulkSet to List. if the bulk exceeds the int space then we can't coerce to List anyway,
            // so this query will be trouble. we'd need a legit BulkSet implementation here in C#. this current
            // implementation is here to replicate the previous functionality that existed on the server side in
            // previous versions.
            return(Enumerable.Range(0, jArray.Count / 2).SelectMany <int, object>(i =>
                                                                                  Enumerable.Repeat <object>(reader.ToObject(jArray[i * 2]), (int)reader.ToObject(jArray[i * 2 + 1]))).
                   ToList());
        }
Пример #19
0
        public dynamic Objectify(JsonElement graphsonObject, GraphSONReader reader)
        {
            if (graphsonObject.ValueKind != JsonValueKind.Array)
            {
                return(new List <object>(0));
            }

            // coerce the BulkSet to List. if the bulk exceeds the int space then we can't coerce to List anyway,
            // so this query will be trouble. we'd need a legit BulkSet implementation here in C#. this current
            // implementation is here to replicate the previous functionality that existed on the server side in
            // previous versions.
            return(Enumerable.Range(0, graphsonObject.GetArrayLength() / 2).SelectMany <int, object>(i =>
                                                                                                     Enumerable.Repeat <object>(reader.ToObject(graphsonObject[i * 2]),
                                                                                                                                (int)reader.ToObject(graphsonObject[i * 2 + 1]))).ToList());
        }
Пример #20
0
        public dynamic Objectify(JsonElement graphsonObject, GraphSONReader reader)
        {
            var labels =
                graphsonObject.GetProperty("labels").EnumerateArray()
                .Select(readObjLabels =>
                        new HashSet <string>(readObjLabels.EnumerateArray().Select(l => l.GetString())))
                .ToList <ISet <string> >();
            var objects = graphsonObject.GetProperty("objects").EnumerateArray().Select(o => reader.ToObject(o))
                          .ToList();

            return(new Path(labels, objects));
        }