JsonTokenReader and JsonTokenWriter read and write LINQ to JSON objects. They are located in the Newtonsoft.Json.Linq namespace. These objects allow you to use LINQ to JSON objects with objects that read and write JSON such as the JsonSerializer. For example you can deserialize from a LINQ to JSON object into a regular .NET object and vice versa.
+
JTokenReader and JTokenWriter
+
JTokenReader and JTokenWriter read and write LINQ to JSON objects. They are located in the Newtonsoft.Json.Linq namespace. These objects allow you to use LINQ to JSON objects with objects that read and write JSON such as the JsonSerializer. For example you can deserialize from a LINQ to JSON object into a regular .NET object and vice versa.
@@ -71,7 +71,7 @@
);
JsonSerializer serializer = newJsonSerializer();
-
Person p = (Person)serializer.Deserialize(newJsonTokenReader(o), typeof(Person));
+
Person p = (Person)serializer.Deserialize(newJTokenReader(o), typeof(Person));
// John Smith
Console.WriteLine(p.Name);
diff --git a/Src/Newtonsoft.Json.Tests/JsonTokenReaderTest.cs b/Src/Newtonsoft.Json.Tests/JTokenReaderTest.cs
similarity index 93%
rename from Src/Newtonsoft.Json.Tests/JsonTokenReaderTest.cs
rename to Src/Newtonsoft.Json.Tests/JTokenReaderTest.cs
index b9004b9f..77a10006 100644
--- a/Src/Newtonsoft.Json.Tests/JsonTokenReaderTest.cs
+++ b/Src/Newtonsoft.Json.Tests/JTokenReaderTest.cs
@@ -33,7 +33,7 @@ using Newtonsoft.Json.Linq;
namespace Newtonsoft.Json.Tests
{
- public class JsonTokenReaderTest : TestFixtureBase
+ public class JTokenReaderTest : TestFixtureBase
{
[Test]
public void YahooFinance()
@@ -46,7 +46,7 @@ namespace Newtonsoft.Json.Tests
new JProperty("Test4", null)
);
- using (JsonTokenReader jsonReader = new JsonTokenReader(o))
+ using (JTokenReader jsonReader = new JTokenReader(o))
{
IJsonLineInfo lineInfo = jsonReader;
@@ -96,7 +96,7 @@ namespace Newtonsoft.Json.Tests
Assert.IsFalse(jsonReader.Read());
}
- using (JsonReader jsonReader = new JsonTokenReader(o.Property("Test2")))
+ using (JsonReader jsonReader = new JTokenReader(o.Property("Test2")))
{
Assert.IsTrue(jsonReader.Read());
Assert.AreEqual(JsonToken.PropertyName, jsonReader.TokenType);
@@ -125,7 +125,7 @@ namespace Newtonsoft.Json.Tests
JObject o = JObject.Parse(input);
- using (JsonTokenReader jsonReader = new JsonTokenReader(o))
+ using (JTokenReader jsonReader = new JTokenReader(o))
{
IJsonLineInfo lineInfo = jsonReader;
diff --git a/Src/Newtonsoft.Json.Tests/JsonTokenWriterTest.cs b/Src/Newtonsoft.Json.Tests/JTokenWriterTest.cs
similarity index 92%
rename from Src/Newtonsoft.Json.Tests/JsonTokenWriterTest.cs
rename to Src/Newtonsoft.Json.Tests/JTokenWriterTest.cs
index f6c404a9..e137759b 100644
--- a/Src/Newtonsoft.Json.Tests/JsonTokenWriterTest.cs
+++ b/Src/Newtonsoft.Json.Tests/JTokenWriterTest.cs
@@ -34,13 +34,13 @@ using System.Linq;
namespace Newtonsoft.Json.Tests
{
- public class JsonTokenWriterTest : TestFixtureBase
+ public class JTokenWriterTest : TestFixtureBase
{
[Test]
public void ValueFormatting()
{
JToken root;
- using (JsonTokenWriter jsonWriter = new JsonTokenWriter())
+ using (JTokenWriter jsonWriter = new JTokenWriter())
{
jsonWriter.WriteStartArray();
jsonWriter.WriteValue('@');
@@ -78,7 +78,7 @@ namespace Newtonsoft.Json.Tests
[Test]
public void State()
{
- using (JsonWriter jsonWriter = new JsonTokenWriter())
+ using (JsonWriter jsonWriter = new JTokenWriter())
{
Assert.AreEqual(WriteState.Start, jsonWriter.WriteState);
diff --git a/Src/Newtonsoft.Json.Tests/Linq/JObjectTests.cs b/Src/Newtonsoft.Json.Tests/Linq/JObjectTests.cs
index dd3d7671..1527d5ce 100644
--- a/Src/Newtonsoft.Json.Tests/Linq/JObjectTests.cs
+++ b/Src/Newtonsoft.Json.Tests/Linq/JObjectTests.cs
@@ -246,13 +246,13 @@ Parameter name: arrayIndex")]
JObject o = JObject.FromObject(raw);
Assert.AreEqual("FirstNameValue", (string)o["first_name"]);
- Assert.AreEqual(JsonTokenType.Raw, ((JValue)o["RawContent"]).Type);
+ Assert.AreEqual(JTokenType.Raw, ((JValue)o["RawContent"]).Type);
Assert.AreEqual("[1,2,3,4,5]", (string)o["RawContent"]);
Assert.AreEqual("LastNameValue", (string)o["last_name"]);
}
[Test]
- public void JsonTokenReader()
+ public void JTokenReader()
{
PersonRaw raw = new PersonRaw
{
@@ -263,7 +263,7 @@ Parameter name: arrayIndex")]
JObject o = JObject.FromObject(raw);
- JsonReader reader = new JsonTokenReader(o);
+ JsonReader reader = new JTokenReader(o);
Assert.IsTrue(reader.Read());
Assert.AreEqual(JsonToken.StartObject, reader.TokenType);
@@ -304,7 +304,7 @@ Parameter name: arrayIndex")]
JObject o = JObject.FromObject(raw);
- JsonReader reader = new JsonTokenReader(o);
+ JsonReader reader = new JTokenReader(o);
JsonSerializer serializer = new JsonSerializer();
raw = (PersonRaw)serializer.Deserialize(reader, typeof(PersonRaw));
diff --git a/Src/Newtonsoft.Json.Tests/Linq/JPropertyTests.cs b/Src/Newtonsoft.Json.Tests/Linq/JPropertyTests.cs
index a8b1ed85..c221c74b 100644
--- a/Src/Newtonsoft.Json.Tests/Linq/JPropertyTests.cs
+++ b/Src/Newtonsoft.Json.Tests/Linq/JPropertyTests.cs
@@ -33,7 +33,7 @@ namespace Newtonsoft.Json.Tests.Linq
property = JProperty.Load(reader);
Assert.AreEqual("propertyname", property.Name);
- Assert.IsTrue(JToken.DeepEquals(new JValue(null, JsonTokenType.Null), property.Value));
+ Assert.IsTrue(JToken.DeepEquals(new JValue(null, JTokenType.Null), property.Value));
Assert.AreEqual(JsonToken.EndObject, reader.TokenType);
}
diff --git a/Src/Newtonsoft.Json.Tests/Linq/JValueTests.cs b/Src/Newtonsoft.Json.Tests/Linq/JValueTests.cs
index 539b1295..e83cce30 100644
--- a/Src/Newtonsoft.Json.Tests/Linq/JValueTests.cs
+++ b/Src/Newtonsoft.Json.Tests/Linq/JValueTests.cs
@@ -39,23 +39,23 @@ namespace Newtonsoft.Json.Tests.Linq
{
JValue v = new JValue(true);
Assert.AreEqual(true, v.Value);
- Assert.AreEqual(JsonTokenType.Boolean, v.Type);
+ Assert.AreEqual(JTokenType.Boolean, v.Type);
v.Value = "Pie";
Assert.AreEqual("Pie", v.Value);
- Assert.AreEqual(JsonTokenType.String, v.Type);
+ Assert.AreEqual(JTokenType.String, v.Type);
v.Value = null;
Assert.AreEqual(null, v.Value);
- Assert.AreEqual(JsonTokenType.Null, v.Type);
+ Assert.AreEqual(JTokenType.Null, v.Type);
v.Value = (int?)null;
Assert.AreEqual(null, v.Value);
- Assert.AreEqual(JsonTokenType.Null, v.Type);
+ Assert.AreEqual(JTokenType.Null, v.Type);
v.Value = "Pie";
Assert.AreEqual("Pie", v.Value);
- Assert.AreEqual(JsonTokenType.String, v.Type);
+ Assert.AreEqual(JTokenType.String, v.Type);
}
[Test]
@@ -63,11 +63,11 @@ namespace Newtonsoft.Json.Tests.Linq
{
JValue commentValue = JValue.CreateComment(null);
Assert.AreEqual(null, commentValue.Value);
- Assert.AreEqual(JsonTokenType.Comment, commentValue.Type);
+ Assert.AreEqual(JTokenType.Comment, commentValue.Type);
commentValue.Value = "Comment";
Assert.AreEqual("Comment", commentValue.Value);
- Assert.AreEqual(JsonTokenType.Comment, commentValue.Type);
+ Assert.AreEqual(JTokenType.Comment, commentValue.Type);
}
[Test]
@@ -75,7 +75,7 @@ namespace Newtonsoft.Json.Tests.Linq
{
JValue stringValue = JValue.CreateString(null);
Assert.AreEqual(null, stringValue.Value);
- Assert.AreEqual(JsonTokenType.String, stringValue.Type);
+ Assert.AreEqual(JTokenType.String, stringValue.Type);
}
[Test]
diff --git a/Src/Newtonsoft.Json.Tests/Linq/LinqToJsonTest.cs b/Src/Newtonsoft.Json.Tests/Linq/LinqToJsonTest.cs
index 2dfe0f4e..0e726aa5 100644
--- a/Src/Newtonsoft.Json.Tests/Linq/LinqToJsonTest.cs
+++ b/Src/Newtonsoft.Json.Tests/Linq/LinqToJsonTest.cs
@@ -76,7 +76,7 @@ namespace Newtonsoft.Json.Tests.Linq
);
JsonSerializer serializer = new JsonSerializer();
- Person p = (Person)serializer.Deserialize(new JsonTokenReader(o), typeof(Person));
+ Person p = (Person)serializer.Deserialize(new JTokenReader(o), typeof(Person));
// John Smith
Console.WriteLine(p.Name);
@@ -589,8 +589,8 @@ keyword such as type of business.""
JsonSerializer jsonSerializer = new JsonSerializer();
- JsonTokenWriter jsonWriter;
- using (jsonWriter = new JsonTokenWriter())
+ JTokenWriter jsonWriter;
+ using (jsonWriter = new JTokenWriter())
{
jsonSerializer.Serialize(jsonWriter, testDates);
}
diff --git a/Src/Newtonsoft.Json.Tests/Newtonsoft.Json.Tests.Compact.csproj b/Src/Newtonsoft.Json.Tests/Newtonsoft.Json.Tests.Compact.csproj
index b13c426f..9895c5db 100644
--- a/Src/Newtonsoft.Json.Tests/Newtonsoft.Json.Tests.Compact.csproj
+++ b/Src/Newtonsoft.Json.Tests/Newtonsoft.Json.Tests.Compact.csproj
@@ -60,6 +60,8 @@
+
+
@@ -120,8 +122,6 @@
-
-
diff --git a/Src/Newtonsoft.Json.Tests/Newtonsoft.Json.Tests.Silverlight.csproj b/Src/Newtonsoft.Json.Tests/Newtonsoft.Json.Tests.Silverlight.csproj
index 68b36de3..fe249003 100644
--- a/Src/Newtonsoft.Json.Tests/Newtonsoft.Json.Tests.Silverlight.csproj
+++ b/Src/Newtonsoft.Json.Tests/Newtonsoft.Json.Tests.Silverlight.csproj
@@ -65,6 +65,8 @@
+
+
@@ -125,8 +127,6 @@
-
-
diff --git a/Src/Newtonsoft.Json.Tests/Newtonsoft.Json.Tests.csproj b/Src/Newtonsoft.Json.Tests/Newtonsoft.Json.Tests.csproj
index 6ff647d2..a55cba9c 100644
--- a/Src/Newtonsoft.Json.Tests/Newtonsoft.Json.Tests.csproj
+++ b/Src/Newtonsoft.Json.Tests/Newtonsoft.Json.Tests.csproj
@@ -142,8 +142,8 @@
-
-
+
+
diff --git a/Src/Newtonsoft.Json.Tests/Schema/JsonSchemaGeneratorTests.cs b/Src/Newtonsoft.Json.Tests/Schema/JsonSchemaGeneratorTests.cs
index 13339062..e0e91819 100644
--- a/Src/Newtonsoft.Json.Tests/Schema/JsonSchemaGeneratorTests.cs
+++ b/Src/Newtonsoft.Json.Tests/Schema/JsonSchemaGeneratorTests.cs
@@ -378,7 +378,7 @@ namespace Newtonsoft.Json.Tests.Schema
DirectoryInfo temp = new DirectoryInfo(@"c:\temp");
- JsonTokenWriter jsonWriter = new JsonTokenWriter();
+ JTokenWriter jsonWriter = new JTokenWriter();
JsonSerializer serializer = new JsonSerializer();
serializer.Converters.Add(new IsoDateTimeConverter());
serializer.MappingResolver = new CustomDirectoryInfoMapper();
diff --git a/Src/Newtonsoft.Json.Tests/Serialization/CamelCaseMappingResolverTests.cs b/Src/Newtonsoft.Json.Tests/Serialization/CamelCaseMappingResolverTests.cs
index e0846007..1b2c6516 100644
--- a/Src/Newtonsoft.Json.Tests/Serialization/CamelCaseMappingResolverTests.cs
+++ b/Src/Newtonsoft.Json.Tests/Serialization/CamelCaseMappingResolverTests.cs
@@ -68,7 +68,7 @@ namespace Newtonsoft.Json.Tests.Serialization
}
[Test]
- public void JsonTokenWriter()
+ public void JTokenWriter()
{
JsonIgnoreAttributeOnClassTestClass ignoreAttributeOnClassTestClass = new JsonIgnoreAttributeOnClassTestClass();
ignoreAttributeOnClassTestClass.Field = int.MinValue;
@@ -76,7 +76,7 @@ namespace Newtonsoft.Json.Tests.Serialization
JsonSerializer serializer = new JsonSerializer();
serializer.MappingResolver = new CamelCaseMappingResolver();
- JsonTokenWriter writer = new JsonTokenWriter();
+ JTokenWriter writer = new JTokenWriter();
serializer.Serialize(writer, ignoreAttributeOnClassTestClass);
diff --git a/Src/Newtonsoft.Json/JsonReader.cs b/Src/Newtonsoft.Json/JsonReader.cs
index 7dd7dd7d..137486a5 100644
--- a/Src/Newtonsoft.Json/JsonReader.cs
+++ b/Src/Newtonsoft.Json/JsonReader.cs
@@ -115,7 +115,7 @@ namespace Newtonsoft.Json
private int _top;
- private readonly List _stack;
+ private readonly List _stack;
///
/// Gets the quotation mark character used to enclose the value of a string.
@@ -173,27 +173,27 @@ namespace Newtonsoft.Json
{
//_testBuffer = new StringBuilder();
_currentState = State.Start;
- _stack = new List();
+ _stack = new List();
_top = 0;
- Push(JsonTokenType.None);
+ Push(JTokenType.None);
}
- private void Push(JsonTokenType value)
+ private void Push(JTokenType value)
{
_stack.Add(value);
_top++;
}
- private JsonTokenType Pop()
+ private JTokenType Pop()
{
- JsonTokenType value = Peek();
+ JTokenType value = Peek();
_stack.RemoveAt(_stack.Count - 1);
_top--;
return value;
}
- private JsonTokenType Peek()
+ private JTokenType Peek()
{
return _stack[_top - 1];
}
@@ -241,15 +241,15 @@ namespace Newtonsoft.Json
{
case JsonToken.StartObject:
_currentState = State.ObjectStart;
- Push(JsonTokenType.Object);
+ Push(JTokenType.Object);
break;
case JsonToken.StartArray:
_currentState = State.ArrayStart;
- Push(JsonTokenType.Array);
+ Push(JTokenType.Array);
break;
case JsonToken.StartConstructor:
_currentState = State.ConstructorStart;
- Push(JsonTokenType.Constructor);
+ Push(JTokenType.Constructor);
break;
case JsonToken.EndObject:
ValidateEnd(JsonToken.EndObject);
@@ -265,7 +265,7 @@ namespace Newtonsoft.Json
break;
case JsonToken.PropertyName:
_currentState = State.Property;
- Push(JsonTokenType.Property);
+ Push(JTokenType.Property);
break;
case JsonToken.Undefined:
case JsonToken.Integer:
@@ -279,8 +279,8 @@ namespace Newtonsoft.Json
break;
}
- JsonTokenType current = Peek();
- if (current == JsonTokenType.Property && _currentState == State.PostValue)
+ JTokenType current = Peek();
+ if (current == JTokenType.Property && _currentState == State.PostValue)
Pop();
if (value != null)
@@ -297,7 +297,7 @@ namespace Newtonsoft.Json
private void ValidateEnd(JsonToken endToken)
{
- JsonTokenType currentObject = Pop();
+ JTokenType currentObject = Pop();
if (GetTypeForCloseToken(endToken) != currentObject)
throw new JsonReaderException("JsonToken {0} is not valid for closing JsonType {1}.".FormatWith(CultureInfo.InvariantCulture, endToken, currentObject));
@@ -308,20 +308,20 @@ namespace Newtonsoft.Json
///
protected void SetStateBasedOnCurrent()
{
- JsonTokenType currentObject = Peek();
+ JTokenType currentObject = Peek();
switch (currentObject)
{
- case JsonTokenType.Object:
+ case JTokenType.Object:
_currentState = State.Object;
break;
- case JsonTokenType.Array:
+ case JTokenType.Array:
_currentState = State.Array;
break;
- case JsonTokenType.Constructor:
+ case JTokenType.Constructor:
_currentState = State.Constructor;
break;
- case JsonTokenType.None:
+ case JTokenType.None:
_currentState = State.Finished;
break;
default:
@@ -357,16 +357,16 @@ namespace Newtonsoft.Json
}
}
- private JsonTokenType GetTypeForCloseToken(JsonToken token)
+ private JTokenType GetTypeForCloseToken(JsonToken token)
{
switch (token)
{
case JsonToken.EndObject:
- return JsonTokenType.Object;
+ return JTokenType.Object;
case JsonToken.EndArray:
- return JsonTokenType.Array;
+ return JTokenType.Array;
case JsonToken.EndConstructor:
- return JsonTokenType.Constructor;
+ return JTokenType.Constructor;
default:
throw new JsonReaderException("Not a valid close JsonToken: " + token);
}
diff --git a/Src/Newtonsoft.Json/JsonSerializer.cs b/Src/Newtonsoft.Json/JsonSerializer.cs
index bdff788c..74ac81c7 100644
--- a/Src/Newtonsoft.Json/JsonSerializer.cs
+++ b/Src/Newtonsoft.Json/JsonSerializer.cs
@@ -238,7 +238,7 @@ namespace Newtonsoft.Json
private JToken CreateJToken(JsonReader reader)
{
JToken token;
- using (JsonTokenWriter writer = new JsonTokenWriter())
+ using (JTokenWriter writer = new JTokenWriter())
{
writer.WriteToken(reader);
token = writer.Token;
diff --git a/Src/Newtonsoft.Json/JsonValidatingReader.cs b/Src/Newtonsoft.Json/JsonValidatingReader.cs
index d0021689..b9e57782 100644
--- a/Src/Newtonsoft.Json/JsonValidatingReader.cs
+++ b/Src/Newtonsoft.Json/JsonValidatingReader.cs
@@ -39,7 +39,7 @@ namespace Newtonsoft.Json
{
private class SchemaScope
{
- private readonly JsonTokenType _tokenType;
+ private readonly JTokenType _tokenType;
private readonly JsonSchemaModel _schema;
private readonly Dictionary _requiredProperties;
@@ -56,12 +56,12 @@ namespace Newtonsoft.Json
get { return _requiredProperties; }
}
- public JsonTokenType TokenType
+ public JTokenType TokenType
{
get { return _tokenType; }
}
- public SchemaScope(JsonTokenType tokenType, JsonSchemaModel schema)
+ public SchemaScope(JTokenType tokenType, JsonSchemaModel schema)
{
_tokenType = tokenType;
_schema = schema;
@@ -154,9 +154,9 @@ namespace Newtonsoft.Json
switch (_currentScope.TokenType)
{
- case JsonTokenType.None:
+ case JTokenType.None:
return _currentScope.Schema;
- case JsonTokenType.Object:
+ case JTokenType.Object:
if (_currentScope.CurrentPropertyName == null)
throw new Exception("CurrentPropertyName has not been set on scope.");
@@ -165,7 +165,7 @@ namespace Newtonsoft.Json
return propertySchema;
return (CurrentSchema.AllowAdditionalProperties) ? CurrentSchema.AdditionalProperties : null;
- case JsonTokenType.Array:
+ case JTokenType.Array:
if (!CollectionUtils.IsNullOrEmpty(CurrentSchema.Items))
{
if (CurrentSchema.Items.Count == 1)
@@ -176,7 +176,7 @@ namespace Newtonsoft.Json
}
return (CurrentSchema.AllowAdditionalProperties) ? CurrentSchema.AdditionalProperties : null;
- case JsonTokenType.Constructor:
+ case JTokenType.Constructor:
return null;
default:
throw new ArgumentOutOfRangeException("TokenType", "Unexpected token type: {0}".FormatWith(CultureInfo.InvariantCulture, _currentScope.TokenType));
@@ -296,17 +296,17 @@ namespace Newtonsoft.Json
JsonSchemaModel objectSchema = (ValidateObject(CurrentMemberSchema))
? CurrentMemberSchema
: null;
- Push(new SchemaScope(JsonTokenType.Object, objectSchema));
+ Push(new SchemaScope(JTokenType.Object, objectSchema));
break;
case JsonToken.StartArray:
ProcessValue();
JsonSchemaModel arraySchema = (ValidateArray(CurrentMemberSchema))
? CurrentMemberSchema
: null;
- Push(new SchemaScope(JsonTokenType.Array, arraySchema));
+ Push(new SchemaScope(JTokenType.Array, arraySchema));
break;
case JsonToken.StartConstructor:
- Push(new SchemaScope(JsonTokenType.Constructor, null));
+ Push(new SchemaScope(JTokenType.Constructor, null));
break;
case JsonToken.PropertyName:
ValidatePropertyName(CurrentSchema);
@@ -457,7 +457,7 @@ namespace Newtonsoft.Json
private void ProcessValue()
{
- if (_currentScope != null && _currentScope.TokenType == JsonTokenType.Array)
+ if (_currentScope != null && _currentScope.TokenType == JTokenType.Array)
{
_currentScope.ArrayItemCount++;
diff --git a/Src/Newtonsoft.Json/JsonWriter.cs b/Src/Newtonsoft.Json/JsonWriter.cs
index 7734927c..99111027 100644
--- a/Src/Newtonsoft.Json/JsonWriter.cs
+++ b/Src/Newtonsoft.Json/JsonWriter.cs
@@ -121,7 +121,7 @@ namespace Newtonsoft.Json
private int _top;
- private List _stack;
+ private List _stack;
private State _currentState;
private Formatting _formatting;
private List