diff options
Diffstat (limited to 'MediaBrowser.Model/Serialization')
| -rw-r--r-- | MediaBrowser.Model/Serialization/IJsonSerializer.cs | 103 | ||||
| -rw-r--r-- | MediaBrowser.Model/Serialization/IProtobufSerializer.cs | 63 | ||||
| -rw-r--r-- | MediaBrowser.Model/Serialization/IXmlSerializer.cs | 69 |
3 files changed, 235 insertions, 0 deletions
diff --git a/MediaBrowser.Model/Serialization/IJsonSerializer.cs b/MediaBrowser.Model/Serialization/IJsonSerializer.cs new file mode 100644 index 000000000..056389d2e --- /dev/null +++ b/MediaBrowser.Model/Serialization/IJsonSerializer.cs @@ -0,0 +1,103 @@ +using System; +using System.IO; + +namespace MediaBrowser.Model.Serialization +{ + public interface IJsonSerializer + { + /// <summary> + /// Serializes to stream. + /// </summary> + /// <typeparam name="T"></typeparam> + /// <param name="obj">The obj.</param> + /// <param name="stream">The stream.</param> + /// <exception cref="System.ArgumentNullException">obj</exception> + void SerializeToStream<T>(T obj, Stream stream) + where T : class; + + /// <summary> + /// Serializes to file. + /// </summary> + /// <typeparam name="T"></typeparam> + /// <param name="obj">The obj.</param> + /// <param name="file">The file.</param> + /// <exception cref="System.ArgumentNullException">obj</exception> + void SerializeToFile<T>(T obj, string file) + where T : class; + + /// <summary> + /// Deserializes from file. + /// </summary> + /// <param name="type">The type.</param> + /// <param name="file">The file.</param> + /// <returns>System.Object.</returns> + /// <exception cref="System.ArgumentNullException">type</exception> + object DeserializeFromFile(Type type, string file); + + /// <summary> + /// Deserializes from file. + /// </summary> + /// <typeparam name="T"></typeparam> + /// <param name="file">The file.</param> + /// <returns>``0.</returns> + /// <exception cref="System.ArgumentNullException">file</exception> + T DeserializeFromFile<T>(string file) + where T : class; + + /// <summary> + /// Deserializes from stream. + /// </summary> + /// <typeparam name="T"></typeparam> + /// <param name="stream">The stream.</param> + /// <returns>``0.</returns> + /// <exception cref="System.ArgumentNullException">stream</exception> + T DeserializeFromStream<T>(Stream stream); + + /// <summary> + /// Deserializes from string. + /// </summary> + /// <typeparam name="T"></typeparam> + /// <param name="text">The text.</param> + /// <returns>``0.</returns> + /// <exception cref="System.ArgumentNullException">text</exception> + T DeserializeFromString<T>(string text); + + /// <summary> + /// Deserializes from stream. + /// </summary> + /// <param name="stream">The stream.</param> + /// <param name="type">The type.</param> + /// <returns>System.Object.</returns> + /// <exception cref="System.ArgumentNullException">stream</exception> + object DeserializeFromStream(Stream stream, Type type); + + /// <summary> + /// Deserializes from string. + /// </summary> + /// <param name="json">The json.</param> + /// <param name="type">The type.</param> + /// <returns>System.Object.</returns> + /// <exception cref="System.ArgumentNullException">json</exception> + object DeserializeFromString(string json, Type type); + + /// <summary> + /// Serializes to string. + /// </summary> + /// <typeparam name="T"></typeparam> + /// <param name="obj">The obj.</param> + /// <returns>System.String.</returns> + /// <exception cref="System.ArgumentNullException">obj</exception> + string SerializeToString<T>(T obj) + where T : class; + + /// <summary> + /// Serializes to bytes. + /// </summary> + /// <typeparam name="T"></typeparam> + /// <param name="obj">The obj.</param> + /// <returns>System.Byte[][].</returns> + /// <exception cref="System.ArgumentNullException">obj</exception> + byte[] SerializeToBytes<T>(T obj) + where T : class; + } +}
\ No newline at end of file diff --git a/MediaBrowser.Model/Serialization/IProtobufSerializer.cs b/MediaBrowser.Model/Serialization/IProtobufSerializer.cs new file mode 100644 index 000000000..4c3ef6960 --- /dev/null +++ b/MediaBrowser.Model/Serialization/IProtobufSerializer.cs @@ -0,0 +1,63 @@ +using System; +using System.IO; + +namespace MediaBrowser.Model.Serialization +{ + public interface IProtobufSerializer + { + /// <summary> + /// Serializes to stream. + /// </summary> + /// <param name="obj">The obj.</param> + /// <param name="stream">The stream.</param> + /// <exception cref="System.ArgumentNullException">obj</exception> + void SerializeToStream(object obj, Stream stream); + + /// <summary> + /// Deserializes from stream. + /// </summary> + /// <param name="stream">The stream.</param> + /// <param name="type">The type.</param> + /// <returns>System.Object.</returns> + /// <exception cref="System.ArgumentNullException">stream</exception> + object DeserializeFromStream(Stream stream, Type type); + + /// <summary> + /// Deserializes from stream. + /// </summary> + /// <typeparam name="T"></typeparam> + /// <param name="stream">The stream.</param> + /// <returns>``0.</returns> + T DeserializeFromStream<T>(Stream stream) + where T : class; + + /// <summary> + /// Serializes to file. + /// </summary> + /// <typeparam name="T"></typeparam> + /// <param name="obj">The obj.</param> + /// <param name="file">The file.</param> + /// <exception cref="System.ArgumentNullException">file</exception> + void SerializeToFile<T>(T obj, string file); + + /// <summary> + /// Deserializes from file. + /// </summary> + /// <typeparam name="T"></typeparam> + /// <param name="file">The file.</param> + /// <returns>``0.</returns> + /// <exception cref="System.ArgumentNullException">file</exception> + T DeserializeFromFile<T>(string file) + where T : class; + + /// <summary> + /// Serializes to bytes. + /// </summary> + /// <typeparam name="T"></typeparam> + /// <param name="obj">The obj.</param> + /// <returns>System.Byte[][].</returns> + /// <exception cref="System.ArgumentNullException">obj</exception> + byte[] SerializeToBytes<T>(T obj) + where T : class; + } +}
\ No newline at end of file diff --git a/MediaBrowser.Model/Serialization/IXmlSerializer.cs b/MediaBrowser.Model/Serialization/IXmlSerializer.cs new file mode 100644 index 000000000..1d0e0302b --- /dev/null +++ b/MediaBrowser.Model/Serialization/IXmlSerializer.cs @@ -0,0 +1,69 @@ +using System; +using System.IO; + +namespace MediaBrowser.Model.Serialization +{ + public interface IXmlSerializer + { + /// <summary> + /// Deserializes from stream. + /// </summary> + /// <typeparam name="T"></typeparam> + /// <param name="stream">The stream.</param> + /// <returns>``0.</returns> + T DeserializeFromStream<T>(Stream stream); + + /// <summary> + /// Deserializes from stream. + /// </summary> + /// <param name="type">The type.</param> + /// <param name="stream">The stream.</param> + /// <returns>System.Object.</returns> + object DeserializeFromStream(Type type, Stream stream); + + /// <summary> + /// Serializes to stream. + /// </summary> + /// <param name="obj">The obj.</param> + /// <param name="stream">The stream.</param> + void SerializeToStream(object obj, Stream stream); + + /// <summary> + /// Deserializes from file. + /// </summary> + /// <typeparam name="T"></typeparam> + /// <param name="file">The file.</param> + /// <returns>``0.</returns> + T DeserializeFromFile<T>(string file); + + /// <summary> + /// Serializes to file. + /// </summary> + /// <param name="obj">The obj.</param> + /// <param name="file">The file.</param> + void SerializeToFile(object obj, string file); + + /// <summary> + /// Deserializes from file. + /// </summary> + /// <param name="type">The type.</param> + /// <param name="file">The file.</param> + /// <returns>System.Object.</returns> + object DeserializeFromFile(Type type, string file); + + /// <summary> + /// Deserializes from bytes. + /// </summary> + /// <param name="type">The type.</param> + /// <param name="buffer">The buffer.</param> + /// <returns>System.Object.</returns> + object DeserializeFromBytes(Type type, byte[] buffer); + + /// <summary> + /// Serializes to bytes. + /// </summary> + /// <param name="obj">The obj.</param> + /// <returns>System.Byte[][].</returns> + byte[] SerializeToBytes(object obj); + } +}
\ No newline at end of file |
