Files
plexcsharp/PlexAPI/Utils/FlexibleObjectDeserializer.cs

44 lines
1.4 KiB
C#

//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
//
// Changes to this file may cause incorrect behavior and will be lost when
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
#nullable enable
namespace PlexAPI.Utils
{
using System;
using System.Linq;
using System.Collections.Generic;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
internal class FlexibleObjectDeserializer: JsonConverter
{
public override bool CanConvert(Type objectType) =>
objectType == typeof(object);
public override bool CanWrite => false;
public override object? ReadJson(JsonReader reader, Type objectType, object? existingValue, JsonSerializer serializer)
{
var token = JToken.ReadFrom(reader);
if (token is JArray)
{
return new List<object>(token.Select(t =>
{
return t.ToString();
}));
}
return token.ToObject(objectType);
}
public override void WriteJson(JsonWriter writer, object? value, JsonSerializer serializer) =>
throw new NotImplementedException();
}
}