Exemplo n.º 1
0
        private static IJsonWrapper ReadValue(WrapperFactory factory, JsonReader reader)
        {
            reader.Read();
            if (reader.Token == JsonToken.ArrayEnd ||
                reader.Token == JsonToken.Null)
            {
                return(null);
            }
            IJsonWrapper instance = factory();

            if (reader.Token == JsonToken.String)
            {
                instance.SetString((string)reader.Value);
                return(instance);
            }
            if (reader.Token == JsonToken.Real)
            {
                instance.SetReal((double)reader.Value);
                return(instance);
            }
            if (reader.Token == JsonToken.Natural)
            {
                instance.SetNatural((long)reader.Value);
                return(instance);
            }
            if (reader.Token == JsonToken.Boolean)
            {
                instance.SetBoolean((bool)reader.Value);
                return(instance);
            }
            if (reader.Token == JsonToken.ArrayStart)
            {
                instance.SetJsonType(JsonType.Array);
                while (true)
                {
                    IJsonWrapper item = ReadValue(factory, reader);
                    if (item == null && reader.Token == JsonToken.ArrayEnd)
                    {
                        break;
                    }
                    ((IList)instance).Add(item);
                }
            }
            else if (reader.Token == JsonToken.ObjectStart)
            {
                instance.SetJsonType(JsonType.Object);
                while (true)
                {
                    reader.Read();
                    if (reader.Token == JsonToken.ObjectEnd)
                    {
                        break;
                    }
                    string property = (string)reader.Value;
                    ((IDictionary)instance)[property] = ReadValue(factory, reader);
                }
            }
            return(instance);
        }
Exemplo n.º 2
0
        private static IJsonWrapper ReadValue(WrapperFactory factory,
                                              JsonReader reader)
        {
            reader.Read();

            if (reader.Token == JsonToken.ArrayEnd ||
                reader.Token == JsonToken.Null)
            {
                return(null);
            }

            IJsonWrapper instance = factory();

            if (reader.Token == JsonToken.String)
            {
                instance.SetString((string)reader.Value);
                return(instance);
            }

            if (reader.Token == JsonToken.Double)
            {
                instance.SetDouble((double)reader.Value);
                return(instance);
            }

            if (reader.Token == JsonToken.Int)
            {
                instance.SetInt((int)reader.Value);
                return(instance);
            }

            if (reader.Token == JsonToken.UInt)
            {
                instance.SetUInt((uint)reader.Value);
                return(instance);
            }

            if (reader.Token == JsonToken.Long)
            {
                instance.SetLong((long)reader.Value);
                return(instance);
            }

            if (reader.Token == JsonToken.ULong)
            {
                instance.SetULong((ulong)reader.Value);
                return(instance);
            }

            if (reader.Token == JsonToken.Boolean)
            {
                instance.SetBoolean((bool)reader.Value);
                return(instance);
            }

            if (reader.Token == JsonToken.ArrayStart)
            {
                instance.SetJsonType(JsonType.Array);

                while (true)
                {
                    IJsonWrapper item = ReadValue(factory, reader);
                    // nij - added check to see if the item is not null.  This is to handle arrays within arrays.
                    // In those cases when the outer array read the inner array an item was returned back the current
                    // reader.Token is at the ArrayEnd for the inner array.
                    if (item == null && reader.Token == JsonToken.ArrayEnd)
                    {
                        break;
                    }

                    ((IList)instance).Add(item);
                }
            }
            else if (reader.Token == JsonToken.ObjectStart)
            {
                instance.SetJsonType(JsonType.Object);

                while (true)
                {
                    reader.Read();

                    if (reader.Token == JsonToken.ObjectEnd)
                    {
                        break;
                    }

                    string property = (string)reader.Value;

                    ((IDictionary)instance)[property] = ReadValue(
                        factory, reader);
                }
            }

            return(instance);
        }
Exemplo n.º 3
0
        private static IJsonWrapper ReadValue(WrapperFactory factory, JsonReader reader)
        {
            reader.Read();
            IJsonWrapper result;

            if (reader.Token == JsonToken.ArrayEnd || reader.Token == JsonToken.Null)
            {
                result = null;
            }
            else
            {
                IJsonWrapper jsonWrapper = factory();
                if (reader.Token == JsonToken.String)
                {
                    jsonWrapper.SetString((string)reader.Value);
                    result = jsonWrapper;
                }
                else if (reader.Token == JsonToken.Double)
                {
                    jsonWrapper.SetDouble((double)reader.Value);
                    result = jsonWrapper;
                }
                else if (reader.Token == JsonToken.Int)
                {
                    jsonWrapper.SetInt((int)reader.Value);
                    result = jsonWrapper;
                }
                else if (reader.Token == JsonToken.Long)
                {
                    jsonWrapper.SetLong((long)reader.Value);
                    result = jsonWrapper;
                }
                else if (reader.Token == JsonToken.Boolean)
                {
                    jsonWrapper.SetBoolean((bool)reader.Value);
                    result = jsonWrapper;
                }
                else
                {
                    if (reader.Token == JsonToken.ArrayStart)
                    {
                        jsonWrapper.SetJsonType(JsonType.Array);
                        while (true)
                        {
                            IJsonWrapper value = JsonMapper.ReadValue(factory, reader);
                            if (reader.Token == JsonToken.ArrayEnd)
                            {
                                break;
                            }
                            jsonWrapper.Add(value);
                        }
                    }
                    else if (reader.Token == JsonToken.ObjectStart)
                    {
                        jsonWrapper.SetJsonType(JsonType.Object);
                        while (true)
                        {
                            reader.Read();
                            if (reader.Token == JsonToken.ObjectEnd)
                            {
                                break;
                            }
                            string key = (string)reader.Value;
                            jsonWrapper[key] = JsonMapper.ReadValue(factory, reader);
                        }
                    }
                    result = jsonWrapper;
                }
            }
            return(result);
        }
Exemplo n.º 4
0
        private static IJsonWrapper ReadValue(WrapperFactory factory,
                                              JsonReader reader)
        {
            reader.Read();

            if (reader.Token == JsonToken.ArrayEnd ||
                reader.Token == JsonToken.Null)
            {
                return(null);
            }

            IJsonWrapper instance = factory();

            switch (reader.Token)
            {
            case JsonToken.String:
                instance.SetString((string)reader.Value);
                break;

            case JsonToken.Double:
                instance.SetDouble((double)reader.Value);
                break;

            case JsonToken.Int:
                instance.SetInt((int)reader.Value);
                break;

            case JsonToken.Long:
                instance.SetLong((long)reader.Value);
                break;

            case JsonToken.Boolean:
                instance.SetBoolean((bool)reader.Value);
                break;

            case JsonToken.ArrayStart:
                instance.SetJsonType(JsonType.Array);

                while (true)
                {
                    IJsonWrapper item = ReadValue(factory, reader);
                    if (item == null && reader.Token == JsonToken.ArrayEnd)
                    {
                        break;
                    }

                    ((IList)instance).Add(item);
                }
                break;

            case JsonToken.ObjectStart:
                instance.SetJsonType(JsonType.Object);

                while (true)
                {
                    reader.Read();
                    if (reader.Token == JsonToken.ObjectEnd)
                    {
                        break;
                    }

                    string property = (string)reader.Value;
                    ((IDictionary)instance)[property] = ReadValue(
                        factory, reader);
                }
                break;
            }

            return(instance);
        }
Exemplo n.º 5
0
        static IJsonWrapper ReadValue(WrapperFactory factory, JsonReader reader)
        {
            reader.Read();

            if (reader.Token == JsonToken.ArrayEnd || reader.Token == JsonToken.Null)
            {
                return(null);
            }

            IJsonWrapper instance = factory();

            if (reader.Token == JsonToken.String)
            {
                instance.SetString((string)reader.Value);
                return(instance);
            }

            if (reader.Token == JsonToken.Double)
            {
                instance.SetDouble((double)reader.Value);
                return(instance);
            }

            if (reader.Token == JsonToken.Int)
            {
                instance.SetInt((int)reader.Value);
                return(instance);
            }

            if (reader.Token == JsonToken.Long)
            {
                instance.SetLong((long)reader.Value);
                return(instance);
            }

            if (reader.Token == JsonToken.Boolean)
            {
                instance.SetBoolean((bool)reader.Value);
                return(instance);
            }

            if (reader.Token == JsonToken.ArrayStart)
            {
                instance.SetJsonType(JsonType.Array);

                while (true)
                {
                    IJsonWrapper item = ReadValue(factory, reader);
                    if (item == null && reader.Token == JsonToken.ArrayEnd)
                    {
                        break;
                    }

                    instance.Add(item);
                }
            }
            else if (reader.Token == JsonToken.ObjectStart)
            {
                instance.SetJsonType(JsonType.Object);

                while (true)
                {
                    reader.Read();

                    if (reader.Token == JsonToken.ObjectEnd)
                    {
                        break;
                    }

                    var property = (string)reader.Value;

                    instance[property] = ReadValue(factory, reader);
                }
            }

            return(instance);
        }
Exemplo n.º 6
0
        private static IJsonWrapper a(WrapperFactory A_0, JsonReader A_1)
        {
            A_1.Read();
            if (A_1.Token == JsonToken.ArrayEnd || A_1.Token == JsonToken.Null)
            {
                return(null);
            }
            IJsonWrapper jsonWrapper = A_0();

            if (A_1.Token == JsonToken.String)
            {
                jsonWrapper.SetString((string)A_1.Value);
                return(jsonWrapper);
            }
            if (A_1.Token == JsonToken.Double)
            {
                jsonWrapper.SetDouble((double)A_1.Value);
                return(jsonWrapper);
            }
            if (A_1.Token == JsonToken.Int)
            {
                jsonWrapper.SetInt((int)A_1.Value);
                return(jsonWrapper);
            }
            if (A_1.Token == JsonToken.Long)
            {
                jsonWrapper.SetLong((long)A_1.Value);
                return(jsonWrapper);
            }
            if (A_1.Token == JsonToken.Boolean)
            {
                jsonWrapper.SetBoolean((bool)A_1.Value);
                return(jsonWrapper);
            }
            if (A_1.Token == JsonToken.ArrayStart)
            {
                jsonWrapper.SetJsonType(JsonType.Array);
                while (true)
                {
                    IJsonWrapper jsonWrapper2 = JsonMapper.a(A_0, A_1);
                    if (jsonWrapper2 == null && A_1.Token == JsonToken.ArrayEnd)
                    {
                        break;
                    }
                    jsonWrapper.Add(jsonWrapper2);
                }
            }
            else if (A_1.Token == JsonToken.ObjectStart)
            {
                jsonWrapper.SetJsonType(JsonType.Object);
                while (true)
                {
                    A_1.Read();
                    if (A_1.Token == JsonToken.ObjectEnd)
                    {
                        break;
                    }
                    string key = (string)A_1.Value;
                    jsonWrapper[key] = JsonMapper.a(A_0, A_1);
                }
            }
            return(jsonWrapper);
        }
Exemplo n.º 7
0
        private static IJsonWrapper ReadValue(WrapperFactory factory, JsonReader reader)
        {
            reader.Read();
            if ((reader.Token == JsonToken.ArrayEnd) || (reader.Token == JsonToken.Null))
            {
                return(null);
            }
            IJsonWrapper wrapper = factory();

            if (reader.Token == JsonToken.String)
            {
                wrapper.SetString((string)reader.Value);
                return(wrapper);
            }
            if (reader.Token == JsonToken.Double)
            {
                wrapper.SetDouble((double)reader.Value);
                return(wrapper);
            }
            if (reader.Token == JsonToken.Int)
            {
                wrapper.SetInt((int)reader.Value);
                return(wrapper);
            }
            if (reader.Token == JsonToken.Long)
            {
                wrapper.SetLong((long)reader.Value);
                return(wrapper);
            }
            if (reader.Token == JsonToken.Boolean)
            {
                wrapper.SetBoolean((bool)reader.Value);
                return(wrapper);
            }
            if (reader.Token == JsonToken.ArrayStart)
            {
                wrapper.SetJsonType(JsonType.Array);
                while (true)
                {
                    IJsonWrapper wrapper2 = ReadValue(factory, reader);
                    if (reader.Token == JsonToken.ArrayEnd)
                    {
                        return(wrapper);
                    }
                    wrapper.Add(wrapper2);
                }
            }
            if (reader.Token == JsonToken.ObjectStart)
            {
                wrapper.SetJsonType(JsonType.Object);
                while (true)
                {
                    reader.Read();
                    if (reader.Token == JsonToken.ObjectEnd)
                    {
                        return(wrapper);
                    }
                    string str = (string)reader.Value;
                    wrapper[str] = ReadValue(factory, reader);
                }
            }
            return(wrapper);
        }
Exemplo n.º 8
0
        private static IJsonWrapper ReadValue(WrapperFactory factory, JsonReader reader)
        {
            reader.Read();
            if (reader.Token == JsonToken.ArrayEnd || reader.Token == JsonToken.Null)
            {
                return(null);
            }
            IJsonWrapper jsonWrapper = factory();

            if (reader.Token == JsonToken.String)
            {
                jsonWrapper.SetString((string)reader.Value);
                return(jsonWrapper);
            }
            if (reader.Token == JsonToken.Double)
            {
                jsonWrapper.SetDouble((double)reader.Value);
                return(jsonWrapper);
            }
            if (reader.Token == JsonToken.Int)
            {
                jsonWrapper.SetInt((int)reader.Value);
                return(jsonWrapper);
            }
            if (reader.Token == JsonToken.Long)
            {
                jsonWrapper.SetLong((long)reader.Value);
                return(jsonWrapper);
            }
            if (reader.Token == JsonToken.Boolean)
            {
                jsonWrapper.SetBoolean((bool)reader.Value);
                return(jsonWrapper);
            }
            if (reader.Token == JsonToken.ArrayStart)
            {
                jsonWrapper.SetJsonType(JsonType.Array);
                while (true)
                {
                    IJsonWrapper jsonWrapper2 = JsonMapper.ReadValue(factory, reader);
                    if (reader.Token == JsonToken.ArrayEnd && jsonWrapper2 == null)
                    {
                        break;
                    }
                    jsonWrapper.Add(jsonWrapper2);
                }
            }
            else if (reader.Token == JsonToken.ObjectStart)
            {
                jsonWrapper.SetJsonType(JsonType.Object);
                while (true)
                {
                    reader.Read();
                    if (reader.Token == JsonToken.ObjectEnd)
                    {
                        break;
                    }
                    string text = (string)reader.Value;
                    jsonWrapper.set_Item(text, JsonMapper.ReadValue(factory, reader));
                }
            }
            return(jsonWrapper);
        }
Exemplo n.º 9
0
        private static IJsonWrapper ReadValue(WrapperFactory factory,
                                              JsonReader reader)
        {
            reader.Read();

            if (reader.Token == JsonToken.ArrayEnd ||
                reader.Token == JsonToken.Null)
            {
                return(null);
            }

            IJsonWrapper instance = factory();

            if (reader.Token == JsonToken.String)
            {
                instance.SetString((string)reader.Value);
                return(instance);
            }

            if (reader.Token == JsonToken.Double)
            {
                instance.SetDouble((double)reader.Value);
                return(instance);
            }
            // TestJson.addLog("ffffffffffff:" + reader.Value);
            if (reader.Token == JsonToken.Int)
            {
                instance.SetInt((int)reader.Value);
                // TestJson.addLog("ooooooo:" + reader.Value);
                return(instance);
            }
            //TestJson.addLog("ggggggggggg:" + reader.Value);
            if (reader.Token == JsonToken.Long)
            {
                instance.SetLong((long)reader.Value);
                return(instance);
            }
            //TestJson.addLog("hhhhhhhhhh:" + reader.Value);
            if (reader.Token == JsonToken.Boolean)
            {
                instance.SetBoolean((bool)reader.Value);
                return(instance);
            }
            // TestJson.addLog("iiiiiiiiii:" + reader.Value);

            if (reader.Token == JsonToken.ArrayStart)
            {
                instance.SetJsonType(JsonType.Array);

                while (true)
                {
                    IJsonWrapper item = ReadValue(factory, reader);
                    if (reader.Token == JsonToken.ArrayEnd && item == null)
                    {
                        break;
                    }

                    ((IList)instance).Add(item);
                }
            }
            else if (reader.Token == JsonToken.ObjectStart)
            {
                instance.SetJsonType(JsonType.Object);

                while (true)
                {
                    reader.Read();

                    if (reader.Token == JsonToken.ObjectEnd)
                    {
                        break;
                    }

                    string property = (string)reader.Value;

                    ((IDictionary)instance)[property] = ReadValue(
                        factory, reader);
                }
            }
            //TestJson.addLog("jjjjjjjjjjjj:" + reader.Value);
            return(instance);
        }
Exemplo n.º 10
0
        private static IJsonWrapper ReadValue(WrapperTestMethodory TestMethodory,
                                              JsonReader reader)
        {
            reader.Read();

            if (reader.Token == JsonToken.ArrayEnd ||
                reader.Token == JsonToken.Null)
            {
                return(null);
            }

            IJsonWrapper instance = TestMethodory();

            if (reader.Token == JsonToken.String)
            {
                instance.SetString((string)reader.Value);
                return(instance);
            }

            if (reader.Token == JsonToken.Double)
            {
                instance.SetDouble((double)reader.Value);
                return(instance);
            }

            if (reader.Token == JsonToken.Int)
            {
                instance.SetInt((int)reader.Value);
                return(instance);
            }

            if (reader.Token == JsonToken.Long)
            {
                instance.SetLong((long)reader.Value);
                return(instance);
            }

            if (reader.Token == JsonToken.Boolean)
            {
                instance.SetBoolean((bool)reader.Value);
                return(instance);
            }

            if (reader.Token == JsonToken.ArrayStart)
            {
                instance.SetJsonType(JsonType.Array);

                while (true)
                {
                    IJsonWrapper item = ReadValue(TestMethodory, reader);
                    if (item == null && reader.Token == JsonToken.ArrayEnd)
                    {
                        break;
                    }

                    ((IList)instance).Add(item);
                }
            }
            else if (reader.Token == JsonToken.ObjectStart)
            {
                instance.SetJsonType(JsonType.Object);

                while (true)
                {
                    reader.Read();

                    if (reader.Token == JsonToken.ObjectEnd)
                    {
                        break;
                    }

                    string property = (string)reader.Value;

                    ((IDictionary <string, JsonData>)instance)[property] = (JsonData)ReadValue(
                        TestMethodory, reader);
                }
            }

            return(instance);
        }
Exemplo n.º 11
0
        private static IJsonWrapper ReadValue(WrapperFactory factory, JsonReader reader)
        {
            reader.Read();
            if (reader.Token == JsonToken.ArrayEnd || reader.Token == JsonToken.Null)
            {
                return((IJsonWrapper)null);
            }
            IJsonWrapper jsonWrapper1 = factory();

            if (reader.Token == JsonToken.String)
            {
                jsonWrapper1.SetString((string)reader.Value);
                return(jsonWrapper1);
            }
            if (reader.Token == JsonToken.Double)
            {
                jsonWrapper1.SetDouble((double)reader.Value);
                return(jsonWrapper1);
            }
            if (reader.Token == JsonToken.Int)
            {
                jsonWrapper1.SetInt((int)reader.Value);
                return(jsonWrapper1);
            }
            if (reader.Token == JsonToken.Long)
            {
                jsonWrapper1.SetLong((long)reader.Value);
                return(jsonWrapper1);
            }
            if (reader.Token == JsonToken.Boolean)
            {
                jsonWrapper1.SetBoolean((bool)reader.Value);
                return(jsonWrapper1);
            }
            if (reader.Token == JsonToken.ArrayStart)
            {
                jsonWrapper1.SetJsonType(JsonType.Array);
                while (true)
                {
                    IJsonWrapper jsonWrapper2 = JsonMapper.ReadValue(factory, reader);
                    if (jsonWrapper2 != null || reader.Token != JsonToken.ArrayEnd)
                    {
                        jsonWrapper1.Add((object)jsonWrapper2);
                    }
                    else
                    {
                        break;
                    }
                }
            }
            else if (reader.Token == JsonToken.ObjectStart)
            {
                jsonWrapper1.SetJsonType(JsonType.Object);
                while (true)
                {
                    reader.Read();
                    if (reader.Token != JsonToken.ObjectEnd)
                    {
                        string str = (string)reader.Value;
                        jsonWrapper1[(object)str] = (object)JsonMapper.ReadValue(factory, reader);
                    }
                    else
                    {
                        break;
                    }
                }
            }
            return(jsonWrapper1);
        }
Exemplo n.º 12
0
        private static IJsonWrapper ReadValue(WrapperFactory factory,
                                              JsonReader reader)
        {
            reader.Read();

            if (reader.Token == JsonToken.ObjectEnd ||
                reader.Token == JsonToken.ArrayEnd ||
                reader.Token == JsonToken.Null)
            {
                return(null);
            }

            IJsonWrapper instance = factory();

            if (reader.Token == JsonToken.String)
            {
                instance.SetString((string)reader.Value);
                return(instance);
            }

            if (reader.Token == JsonToken.Double)
            {
                instance.SetDouble((double)reader.Value);
                return(instance);
            }

            if (reader.Token == JsonToken.Int)
            {
                instance.SetInt((int)reader.Value);
                return(instance);
            }

            if (reader.Token == JsonToken.Long)
            {
                instance.SetLong((long)reader.Value);
                return(instance);
            }

            if (reader.Token == JsonToken.Boolean)
            {
                instance.SetBoolean((bool)reader.Value);
                return(instance);
            }

            if (reader.Token == JsonToken.ArrayStart)
            {
                instance.SetJsonType(JsonType.Array);

                while (true)
                {
                    IJsonWrapper item = ReadValue(factory, reader);
                    if (reader.Token == JsonToken.ArrayEnd && item == null)
                    {
                        break;
                    }

                    ((IList)instance).Add(item);
                }

                return(instance);
            }
            else if (reader.Token == JsonToken.ObjectStart)
            {
                instance.SetJsonType(JsonType.Object);

                while (true)
                {
                    reader.Read();

                    if (reader.Token == JsonToken.ObjectEnd)
                    {
                        break;
                    }

                    string property = (string)reader.Value;

                    ((IDictionary)instance)[property] = ReadValue(
                        factory, reader);
                }

                return(instance);
            }

            throw new JsonException("Unexpected Token " + reader.Token.ToString());
        }