Mercurial > repos > snowblizz-super-API-ideas
changeset 323:8a64b36d36b8
Re #324: Add saving of Race and System data to files
* As per GameSystem changes for using existing code:
* Make XML creation method public
* Make sure we're encoding in UTF-8
* Implement saving method for Army
author | IBBoard <dev@ibboard.co.uk> |
---|---|
date | Wed, 09 Mar 2011 20:59:34 +0000 |
parents | 3e9b0603afad |
children | e09a8d9c95f6 |
files | api/Savers/Xml/WarFoundryXmlArmySaver.cs api/Savers/Xml/WarFoundryXmlFileSaver.cs |
diffstat | 2 files changed, 16 insertions(+), 7 deletions(-) [+] |
line wrap: on
line diff
--- a/api/Savers/Xml/WarFoundryXmlArmySaver.cs Wed Mar 09 20:32:08 2011 +0000 +++ b/api/Savers/Xml/WarFoundryXmlArmySaver.cs Wed Mar 09 20:59:34 2011 +0000 @@ -50,7 +50,7 @@ return success; } - private string CreateXmlString(WarFoundryObject toSave) + public string CreateXmlString(WarFoundryObject toSave) { string xmlString = ""; @@ -65,7 +65,7 @@ private string CreateArmyXmlString(Army toSave) { XmlDocument doc = new XmlDocument(); - XmlDeclaration declaration = doc.CreateXmlDeclaration("1.0", null, null); + XmlDeclaration declaration = doc.CreateXmlDeclaration("1.0", "UTF-8", null); doc.AppendChild(declaration); XmlSchema schema = new XmlSchema(); schema.Namespaces.Add("", "http://ibboard.co.uk/warfoundry/army");
--- a/api/Savers/Xml/WarFoundryXmlFileSaver.cs Wed Mar 09 20:32:08 2011 +0000 +++ b/api/Savers/Xml/WarFoundryXmlFileSaver.cs Wed Mar 09 20:59:34 2011 +0000 @@ -38,7 +38,7 @@ zipStream.Write(bytes, 0, bytes.Length); } - public byte[] GetObjectBytes (WarFoundryLoadedObject obj) + public byte[] GetObjectBytes(WarFoundryLoadedObject obj) { string xmlString = ""; @@ -46,21 +46,30 @@ { xmlString = GetGameSystemString((GameSystem)obj); } + else if (obj is Army) + { + xmlString = GetArmyString((Army)obj); + } return StringManipulation.StringToBytes(xmlString); } - - public string GetGameSystemString (GameSystem obj) + + public string GetGameSystemString(GameSystem obj) { return new WarFoundryXmlGameSystemSaver().CreateXmlString(obj); - } + } + public string GetArmyString(Army obj) + { + return new WarFoundryXmlArmySaver().CreateXmlString(obj); + } + private string GetZipEntryName(WarFoundryLoadedObject obj) { return obj.ID + GetFileExtension(obj); } - public string GetFileExtension (WarFoundryLoadedObject obj) + public string GetFileExtension(WarFoundryLoadedObject obj) { string ext = "";