/// <summary>
/// Serializes current Message object into an XML document
/// </summary>
// <returns>string XML value</returns>
public virtual string Serialize() {
System.Xml.Serialization.XmlSerializer xmlSerializer = new System.Xml.Serialization.XmlSerializer(this.GetType());
System.IO.MemoryStream memoryStream = new System.IO.MemoryStream();
xmlSerializer.Serialize(memoryStream, this);
memoryStream.Seek(0, System.IO.SeekOrigin.Begin);
System.IO.StreamReader streamReader = new System.IO.StreamReader(memoryStream);
return streamReader.ReadToEnd();
}
/// <summary>
/// Deserializes workflow markup into an Message object
/// </summary>
// <param name="xml">string workflow markup to deserialize</param>
// <param name="obj">Output Message object</param>
// <param name="exception">output Exception value if deserialize failed</param>
// <returns>true if this XmlSerializer can deserialize the object; otherwise, false</returns>
public static bool Deserialize(string xml, out Message obj, out System.Exception exception) {
exception = null;
obj = null;
try {
System.IO.StringReader stringReader = new System.IO.StringReader(xml);
System.Xml.XmlTextReader xmlTextReader = new System.Xml.XmlTextReader(stringReader);
System.Xml.Serialization.XmlSerializer xmlSerializer = new System.Xml.Serialization.XmlSerializer(typeof(Message));
obj = ((Message)(xmlSerializer.Deserialize(xmlTextReader)));
return true;
}
catch (System.Exception ex) {
exception = ex;
return false;
}
}
/// <summary>
/// Serializes current Message object into file
/// </summary>
// <param name="fileName">full path of outupt xml file</param>
// <param name="exception">output Exception value if failed</param>
// <returns>true if can serialize and save into file; otherwise, false</returns>
public virtual bool SaveToFile(string fileName, out System.Exception exception) {
exception = null;
try {
string xmlString = Serialize();
System.IO.FileInfo xmlFile = new System.IO.FileInfo(fileName);
System.IO.StreamWriter streamWriter = xmlFile.CreateText();
streamWriter.WriteLine(xmlString);
streamWriter.Close();
return true;
}
catch (System.Exception e) {
exception = e;
return false;
}
}
/// <summary>
/// Deserializes workflow markup from file into an Message object
/// </summary>
// <param name="xml">string workflow markup to deserialize</param>
// <param name="obj">Output Message object</param>
// <param name="exception">output Exception value if deserialize failed</param>
// <returns>true if this XmlSerializer can deserialize the object; otherwise, false</returns>
public static bool LoadFromFile(string fileName, out Message obj, out System.Exception exception) {
exception = null;
obj = null;
try {
System.IO.FileStream file = new System.IO.FileStream(fileName, FileMode.Open, FileAccess.Read);
System.IO.StreamReader sr = new System.IO.StreamReader(file);
string xmlString = sr.ReadToEnd();
sr.Close();
file.Close();
return Deserialize(xmlString, out obj, out exception);
}
catch (System.Exception ex) {
exception = ex;
return false;
}
}
/// <summary>
/// Create a clone of this Message object
/// </summary>
public virtual Message Clone() {
return ((Message)(this.MemberwiseClone()));
}
}