rename MessageSerializer to ApiMessageSerializer

This commit is contained in:
2024-10-17 10:10:00 +02:00
parent 9c1723cb0e
commit 8a8407d86e
7 changed files with 17 additions and 17 deletions

View File

@@ -0,0 +1,28 @@
using Newtonsoft.Json;
namespace Pilz.Net.Api;
public class DefaultApiMessageSerializer : IApiMessageSerializer
{
private static JsonSerializerSettings? defaultSerializerSettings;
public JsonSerializerSettings DefaultSerializerSettings => defaultSerializerSettings ??= CreateDefaultSerializerSettings();
protected virtual JsonSerializerSettings CreateDefaultSerializerSettings()
{
return new JsonSerializerSettings
{
TypeNameHandling = TypeNameHandling.Auto,
};
}
public virtual string? Serialize(ApiMessage message)
{
return JsonConvert.SerializeObject(message, DefaultSerializerSettings);
}
public virtual ApiMessage? Deserialize(string json, Type target)
{
return JsonConvert.DeserializeObject(json, target, DefaultSerializerSettings) as ApiMessage;
}
}