Files
BeWoPlaner/BeWoDatabaseTerminator/BeWoDatabaseTerminator/Data/InitialPasswordResponseJsonConverter.cs
Lyndon Jetten 2f8dcc87f0 BeWoDatabaseTerminator hinzugefügt
Kalender-Report für Kollegium e.V. angefangen. Noch nicht fertig!
2022-10-11 16:48:36 +02:00

43 lines
1.4 KiB
C#

using System;
using System.Linq;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
namespace BeWoDatabaseTerminator.Data
{
public class InitialPasswordResponseJsonConverter : JsonConverter
{
public override bool CanConvert(Type objectType)
{
return objectType == typeof(InitialPasswordResponse);
}
public override object ReadJson(JsonReader jsonReader, Type objectType, object existingValue, JsonSerializer serializer)
{
var jsonObject = JObject.Load(jsonReader);
var initialPasswordResponse = new InitialPasswordResponse();
var child = jsonObject.Children<JProperty>().FirstOrDefault();
if(!(child is null))
{
if(child.Name == "SUCCESS")
{
if(bool.TryParse(child.Value.ToString(), out var isSuccess))
{
initialPasswordResponse.IsSuccess = isSuccess;
}
}
}
return initialPasswordResponse;
}
public override bool CanWrite => false;
public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
{
throw new NotImplementedException("Es werden nur Json-Daten vom Server verarbeitet, nicht aber zurückgeschickt.");
}
}
}