/// <summary> /// /// </summary> /// <typeparam name="T"></typeparam> /// <param name="rootAttribute"></param> /// <returns></returns> public static ISerialiser <T> GetXmlSerialiser <T>(XmlRootAttribute rootAttribute = null) { ISerialiser <T> serialiser; if (rootAttribute == null) { serialiser = new XmlSerialiser <T>(); } else { int serialiserKey = GenerateKey(typeof(T), rootAttribute); XmlSerializer xmlSerializer; if (xmlSerializers.TryGetValue(serialiserKey, out xmlSerializer)) { serialiser = (ISerialiser <T>)xmlSerializer; } else { serialiser = new XmlSerialiser <T>(rootAttribute); xmlSerializers.Add(serialiserKey, (XmlSerializer)serialiser); } } return(serialiser); }
/// <summary> /// Create an instance of this class, specifying the root element of the serialised object (using an XML root /// attribute). /// </summary> /// <param name="root">XML root attribute.</param> public XmlToJsonSerialiser(XmlRootAttribute root) { xmlSerialiser = new XmlSerialiser <T>(root); }
/// <summary> /// Create an instance of this class. /// </summary> public XmlToJsonSerialiser() { xmlSerialiser = new XmlSerialiser <T>(); }