void TestR9() { "Demonstrating Requirement #9".title(); DBElement <string, List <string> > pack1 = new DBElement <string, List <string> >("DBElement.cs", "package structure"); packages.insert("DBElement", pack1); DBElement <string, List <string> > pack2 = new DBElement <string, List <string> >("DBEngine.cs", "package structure"); packages.insert("DBEngine", pack2); DBElement <string, List <string> > pack3 = new DBElement <string, List <string> >("DBFactory.cs", "package structure"); pack3.children.AddRange(new List <string> { "DBEngine" }); packages.insert("DBFactory", pack3); DBElement <string, List <string> > pack4 = new DBElement <string, List <string> >("Dispaly.cs", "package structure"); pack4.children.AddRange(new List <string> { "DBElement", "DBEngine", "DBExtensions", "UtilityExtentions" }); packages.insert("Display", pack4); DBElement <string, List <string> > pack5 = new DBElement <string, List <string> >("PersistEngine.cs", "package structure"); pack5.children.AddRange(new List <string> { "DBElement", "DBEngine" }); packages.insert("PersistEngine", pack5); DBElement <string, List <string> > pack6 = new DBElement <string, List <string> >("QueryEngine.cs", "package structure"); pack6.children.AddRange(new List <string> { "DBElement", "DBEngine" }); packages.insert("QueryEngine", pack6); DBElement <string, List <string> > pack7 = new DBElement <string, List <string> >("Scheduler.cs", "package structure"); pack7.children.AddRange(new List <string> { "DBElement", "DBEngine", "PersistEngine" }); packages.insert("Scheduler", pack7); DBElement <string, List <string> > pack8 = new DBElement <string, List <string> >("TestExec.cs", "package structure"); pack8.children.AddRange(new List <string> { "DBElement", "DBEngine", "PersistEngine", "DBExtensions", "DBFactory", "Display", "QueryEngine", "Scheduler", "UtiltiyExtension" }); packages.insert("TestExec", pack8); foreach (var key in packages.Keys()) { DBElement <string, List <string> > elem; packages.getValue(key, out elem); elem.payload = new List <string>(); elem.payload.AddRange(new List <string> { "content" }); } PersistWapper <string, DBElement <string, List <string> > > persist = new StringAndStringList(packages); persist.writeToXML("project2.xml"); Write("\n write the package structure into XML file ./project2.xml"); WriteLine(); }
void TestR5() { "Demonstrating Requirement #5".title(); Write("\n --- Test persist database contents to XML ---"); PersistWapper <string, DBElement <string, List <string> > > persist = new StringAndStringList(DBListOfString); persist.writeToXML("DatabaseContent.xml"); Write("\n --XML file has been created in ./databaseContent.xml--"); WriteLine(); Write("\n -- Restore an existing xml file ---"); persist.restore("databaseContent.xml"); persist.persistDB.showEnumerableDB(); WriteLine(); }
static void Main(string[] args) { TestWriteToXML(); Write("\n --- Test persist <string,<List<string>> to XML ---"); DBElement <string, List <string> > elem1 = new DBElement <string, List <string> >(); elem1.name = "elemLos1"; elem1.descr = "element with ListOfString payload"; elem1.timeStamp = new DateTime(2015, 10, 2, 11, 0, 0); elem1.payload = new List <string> { "one", "two", "three", "four", "five" }; DBElement <string, List <string> > elem2 = new DBElement <string, List <string> >(); elem2.name = "elemLos2"; elem2.descr = "element with ListOfString payload"; elem2.timeStamp = new DateTime(2015, 10, 2, 10, 0, 0); elem2.children = new List <string> { "key1", "key2", "key3" }; elem2.payload = new List <string> { "alpha", "beta", "gamma", "delta", "epsilon" }; DBEngine <string, DBElement <string, List <string> > > db = new DBEngine <string, DBElement <string, List <string> > >(); bool p1 = db.insert("key15", elem1); bool p2 = db.insert("key16", elem2); if (p1 && p2) { Write("\n all inserts succeeded"); } else { Write("\n at least one insert failed"); } PersistWapper <string, DBElement <string, List <string> > > persist2 = new StringAndStringList(db); persist2.writeToXML("DatabaseContent.xml"); persist2.persistDB = new DBEngine <string, DBElement <string, List <string> > >(); if (persist2.restore("DatabaseContent.xml")) { persist2.persistDB.show <string, DBElement <string, List <string> >, List <string>, string>(); } WriteLine(); }