2
0

IXmlSerializer.cs 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. using System;
  2. using System.IO;
  3. namespace MediaBrowser.Model.Serialization
  4. {
  5. public interface IXmlSerializer
  6. {
  7. /// <summary>
  8. /// Deserializes from stream.
  9. /// </summary>
  10. /// <typeparam name="T"></typeparam>
  11. /// <param name="stream">The stream.</param>
  12. /// <returns>``0.</returns>
  13. T DeserializeFromStream<T>(Stream stream);
  14. /// <summary>
  15. /// Deserializes from stream.
  16. /// </summary>
  17. /// <param name="type">The type.</param>
  18. /// <param name="stream">The stream.</param>
  19. /// <returns>System.Object.</returns>
  20. object DeserializeFromStream(Type type, Stream stream);
  21. /// <summary>
  22. /// Serializes to stream.
  23. /// </summary>
  24. /// <param name="obj">The obj.</param>
  25. /// <param name="stream">The stream.</param>
  26. void SerializeToStream(object obj, Stream stream);
  27. /// <summary>
  28. /// Deserializes from file.
  29. /// </summary>
  30. /// <typeparam name="T"></typeparam>
  31. /// <param name="file">The file.</param>
  32. /// <returns>``0.</returns>
  33. T DeserializeFromFile<T>(string file);
  34. /// <summary>
  35. /// Serializes to file.
  36. /// </summary>
  37. /// <param name="obj">The obj.</param>
  38. /// <param name="file">The file.</param>
  39. void SerializeToFile(object obj, string file);
  40. /// <summary>
  41. /// Deserializes from file.
  42. /// </summary>
  43. /// <param name="type">The type.</param>
  44. /// <param name="file">The file.</param>
  45. /// <returns>System.Object.</returns>
  46. object DeserializeFromFile(Type type, string file);
  47. /// <summary>
  48. /// Deserializes from bytes.
  49. /// </summary>
  50. /// <param name="type">The type.</param>
  51. /// <param name="buffer">The buffer.</param>
  52. /// <returns>System.Object.</returns>
  53. object DeserializeFromBytes(Type type, byte[] buffer);
  54. /// <summary>
  55. /// Serializes to bytes.
  56. /// </summary>
  57. /// <param name="obj">The obj.</param>
  58. /// <returns>System.Byte[][].</returns>
  59. byte[] SerializeToBytes(object obj);
  60. }
  61. }