Files
2026-03-17 09:53:09 -05:00

33 lines
989 B
C#

using LCU.Library.Internal.IncentiveApiModels.Entities;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
using System;
using System.Linq;
namespace LCU.Library.Internal.IncentiveApiModels.Common
{
public class RoleConverter : JsonConverter
{
public override bool CanWrite => false;
public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
{
throw new NotImplementedException();
}
public override bool CanRead => base.CanRead;
public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer)
{
var roleName = (string)JObject.Load(reader)["name"];
var role = Role.GetRolesList().FirstOrDefault(role => role.Name.Equals(roleName));
return role;
}
public override bool CanConvert(Type objectType)
{
return objectType == typeof(Role);
}
}
}