Sonarr/src/NzbDrone.SignalR/Serializer.cs

29 lines
767 B
C#
Raw Normal View History

using System;
using System.IO;
using Microsoft.AspNet.SignalR.Json;
2013-05-13 02:52:55 +00:00
using NzbDrone.Common.Serializer;
2013-09-11 06:33:47 +00:00
namespace NzbDrone.SignalR
{
public class Serializer : IJsonSerializer
{
2013-05-13 02:52:55 +00:00
private readonly JsonNetSerializer _signalRSerializer = new JsonNetSerializer();
public void Serialize(object value, TextWriter writer)
{
if (value.GetType().FullName.StartsWith("NzbDrone"))
{
2013-05-13 02:52:55 +00:00
Json.Serialize(value, writer);
}
else
{
_signalRSerializer.Serialize(value, writer);
}
}
2013-05-24 01:41:17 +00:00
public object Parse(TextReader reader, Type targetType)
{
2013-05-24 01:41:17 +00:00
return Json.Deserialize(reader.ReadToEnd(), targetType);
}
}
}