mirror of
https://github.com/aljazceru/BTCPayServerPlugins.git
synced 2025-12-17 07:34:24 +01:00
25 lines
732 B
C#
25 lines
732 B
C#
using System;
|
|
using NBitcoin.DataEncoders;
|
|
using Newtonsoft.Json;
|
|
using WalletWasabi.Helpers;
|
|
|
|
namespace WalletWasabi.Affiliation.Serialization;
|
|
|
|
public class AffiliationByteArrayJsonConverter : JsonConverter<byte[]>
|
|
{
|
|
public override byte[]? ReadJson(JsonReader reader, Type objectType, byte[]? existingValue, bool hasExistingValue, JsonSerializer serializer)
|
|
{
|
|
if (reader.Value is string serialized)
|
|
{
|
|
return Convert.FromHexString(serialized);
|
|
}
|
|
throw new JsonSerializationException("Cannot deserialize object.");
|
|
}
|
|
|
|
public override void WriteJson(JsonWriter writer, byte[]? value, JsonSerializer serializer)
|
|
{
|
|
Guard.NotNull(nameof(value), value);
|
|
writer.WriteValue(Convert.ToHexString(value).ToLower());
|
|
}
|
|
}
|