public static T ReadFirstWithCache <T>() where T : BusinessObject { var cache = BizoCache.Instance; if (cache.Exists(typeof(T), null)) { return((T)cache.Retrieve(typeof(T), null)); } var fileNames = GetAllFileNames <T>(); if (fileNames.Any()) { var loadedBizo = VXMLReader.Read <T>(fileNames.First()); cache.Add(loadedBizo); return(loadedBizo); } return(null); }
public void TestReadUnitsList() { // This XML format is for XML's created in v0.8 // The format changed in v0.9 var xmlToRead = @"<Loadout> <Units> <Unit> <CurrentInfusion>2</CurrentInfusion> <UnitRank>SC</UnitRank> <EssenceStacks>0</EssenceStacks> <HasUnitSpec>True</HasUnitSpec> <Key>Striker</Key> </Unit> <Unit> <CurrentInfusion>3</CurrentInfusion> <UnitRank>None</UnitRank> <EssenceStacks>6</EssenceStacks> <HasUnitSpec>True</HasUnitSpec> <Key>UnstableDreadnought</Key> </Unit> <Unit> <CurrentInfusion>3</CurrentInfusion> <UnitRank>XYZ</UnitRank> <EssenceStacks>6</EssenceStacks> <HasUnitSpec>True</HasUnitSpec> <Key>SplitterAdept</Key> </Unit> </Units> </Loadout>"; var xmlDoc = new XmlDocument(); xmlDoc.LoadXml(xmlToRead); var loadout = (Loadout)VXMLReader.CreateBizoFromXML(typeof(Loadout), xmlDoc.DocumentElement); Assert.That(loadout.Units.ToArray(), Has.Length.EqualTo(3)); }
public static string[] GetAllFileNames <T>() where T : BusinessObject { return(VXMLReader.GetAllFilenames <T>()); }
public static T ReadFromXML <T>(string fileName) where T : BusinessObject { return(VXMLReader.Read <T>(fileName)); }