mirror of
https://github.com/ICDSystems/ICD.Common.Utils.git
synced 2026-02-16 13:15:07 +00:00
feat: Adding extension methods for writing properties to JSON
This commit is contained in:
@@ -7,27 +7,6 @@ namespace ICD.Common.Utils.Extensions
|
|||||||
{
|
{
|
||||||
public static class JsonWriterExtensions
|
public static class JsonWriterExtensions
|
||||||
{
|
{
|
||||||
/// <summary>
|
|
||||||
/// Writes the type value.
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="extends"></param>
|
|
||||||
/// <param name="type"></param>
|
|
||||||
[PublicAPI]
|
|
||||||
public static void WriteType(this JsonWriter extends, Type type)
|
|
||||||
{
|
|
||||||
if (extends == null)
|
|
||||||
throw new ArgumentNullException("extends");
|
|
||||||
|
|
||||||
if (type == null)
|
|
||||||
{
|
|
||||||
extends.WriteNull();
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
string name = type.GetMinimalName();
|
|
||||||
extends.WriteValue(name);
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Serializes the given sequence of items to the writer.
|
/// Serializes the given sequence of items to the writer.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@@ -79,5 +58,101 @@ namespace ICD.Common.Utils.Extensions
|
|||||||
}
|
}
|
||||||
writer.WriteEndArray();
|
writer.WriteEndArray();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Writes the type value.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="extends"></param>
|
||||||
|
/// <param name="type"></param>
|
||||||
|
[PublicAPI]
|
||||||
|
public static void WriteType(this JsonWriter extends, Type type)
|
||||||
|
{
|
||||||
|
if (extends == null)
|
||||||
|
throw new ArgumentNullException("extends");
|
||||||
|
|
||||||
|
if (type == null)
|
||||||
|
{
|
||||||
|
extends.WriteNull();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
string name = type.GetMinimalName();
|
||||||
|
extends.WriteValue(name);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Writes the property name and value to the writer.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="extends"></param>
|
||||||
|
/// <param name="propertyName"></param>
|
||||||
|
/// <param name="value"></param>
|
||||||
|
public static void WriteProperty(this JsonWriter extends, string propertyName, object value)
|
||||||
|
{
|
||||||
|
if (extends == null)
|
||||||
|
throw new ArgumentNullException("extends");
|
||||||
|
|
||||||
|
extends.WritePropertyName(propertyName);
|
||||||
|
extends.WriteValue(value);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Writes the property name and value to the writer.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="extends"></param>
|
||||||
|
/// <param name="propertyName"></param>
|
||||||
|
/// <param name="value"></param>
|
||||||
|
public static void WriteProperty(this JsonWriter extends, string propertyName, string value)
|
||||||
|
{
|
||||||
|
if (extends == null)
|
||||||
|
throw new ArgumentNullException("extends");
|
||||||
|
|
||||||
|
extends.WritePropertyName(propertyName);
|
||||||
|
extends.WriteValue(value);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Writes the property name and value to the writer.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="extends"></param>
|
||||||
|
/// <param name="propertyName"></param>
|
||||||
|
/// <param name="value"></param>
|
||||||
|
public static void WriteProperty(this JsonWriter extends, string propertyName, DateTime value)
|
||||||
|
{
|
||||||
|
if (extends == null)
|
||||||
|
throw new ArgumentNullException("extends");
|
||||||
|
|
||||||
|
extends.WritePropertyName(propertyName);
|
||||||
|
extends.WriteValue(value);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Writes the property name and value to the writer.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="extends"></param>
|
||||||
|
/// <param name="propertyName"></param>
|
||||||
|
/// <param name="value"></param>
|
||||||
|
public static void WriteProperty(this JsonWriter extends, string propertyName, bool value)
|
||||||
|
{
|
||||||
|
if (extends == null)
|
||||||
|
throw new ArgumentNullException("extends");
|
||||||
|
|
||||||
|
extends.WritePropertyName(propertyName);
|
||||||
|
extends.WriteValue(value);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Writes the property name and value to the writer.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="extends"></param>
|
||||||
|
/// <param name="propertyName"></param>
|
||||||
|
/// <param name="value"></param>
|
||||||
|
public static void WriteProperty(this JsonWriter extends, string propertyName, int value)
|
||||||
|
{
|
||||||
|
if (extends == null)
|
||||||
|
throw new ArgumentNullException("extends");
|
||||||
|
|
||||||
|
extends.WritePropertyName(propertyName);
|
||||||
|
extends.WriteValue(value);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user