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();
        }
示例#3
0
        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();
        }