jellyfin-plugin-metashark/Jellyfin.Plugin.MetaShark/Vendor/TMDbLib/Utilities/Converters/TmdbPartialDateConverter.cs

33 lines
1.0 KiB
C#

using Newtonsoft.Json;
using System;
using System.Globalization;
namespace TMDbLib.Utilities.Converters
{
public class TmdbPartialDateConverter : JsonConverter
{
public override bool CanConvert(Type objectType)
{
return objectType == typeof(DateTime?);
}
public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer)
{
string str = reader.Value as string;
if (string.IsNullOrEmpty(str))
return null;
DateTime result;
if (!DateTime.TryParse(str, CultureInfo.InvariantCulture.DateTimeFormat, DateTimeStyles.None, out result))
return null;
return result;
}
public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
{
DateTime? date = value as DateTime?;
writer.WriteValue(date?.ToString(CultureInfo.InvariantCulture));
}
}
}