1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162 |
- using System;
- using System.IO;
- using Newtonsoft.Json;
- using ProtoBuf;
- namespace MediaBrowser.ApiInteraction
- {
- public static class DataSerializer
- {
- public static T DeserializeFromStream<T>(Stream stream, SerializationFormats format)
- {
- if (format == ApiInteraction.SerializationFormats.Protobuf)
- {
- return Serializer.Deserialize<T>(stream);
- }
- if (format == ApiInteraction.SerializationFormats.Jsv)
- {
- throw new NotImplementedException();
- }
- using (StreamReader streamReader = new StreamReader(stream))
- {
- using (JsonReader jsonReader = new JsonTextReader(streamReader))
- {
- return JsonSerializer.Create(new JsonSerializerSettings()).Deserialize<T>(jsonReader);
- }
- }
- }
- public static object DeserializeFromStream(Stream stream, SerializationFormats format, Type type)
- {
- if (format == ApiInteraction.SerializationFormats.Protobuf)
- {
- throw new NotImplementedException();
- }
- if (format == ApiInteraction.SerializationFormats.Jsv)
- {
- throw new NotImplementedException();
- }
- using (StreamReader streamReader = new StreamReader(stream))
- {
- using (JsonReader jsonReader = new JsonTextReader(streamReader))
- {
- return JsonSerializer.Create(new JsonSerializerSettings()).Deserialize(jsonReader, type);
- }
- }
- }
- public static void Configure()
- {
- }
- public static bool CanDeSerializeJsv
- {
- get
- {
- return false;
- }
- }
- }
- }
|