Ejemplo n.º 1
0
        // ---------------- Functions ----------------


        /// <summary>
        /// Overwrites the given settings
        /// config with the settings specified in the passed in XML document.
        /// </summary>
        public static void LoadFromXml(this SqliteDatabaseConfig config, XmlNode parentNode)
        {
            if (parentNode.Name != DatabaseSettingsNodeName)
            {
                throw new XmlException(
                          "Root XML node should be named \"" + DatabaseSettingsNodeName + "\".  Got: " + parentNode.Name
                          );
            }

            foreach (XmlNode childNode in parentNode.ChildNodes)
            {
                switch (childNode.Name.ToLower())
                {
                case "dblocation":
                    config.DatabaseLocation = childNode.InnerText;
                    break;

                case "guid":
                    config.DatabaseId = Guid.Parse(childNode.InnerText);
                    break;
                }
            }
        }
Ejemplo n.º 2
0
        // ---------------- Functions ----------------

        public IList <IDatabaseConfig> Load(AssetManagerSettings settings)
        {
            string filePath = Path.Combine(
                settings.AssetManagerSettingsDirectory,
                "sqlite",
                "SqliteConfig.xml"
                );

            XmlDocument doc = new XmlDocument();

            doc.Load(filePath);

            XmlNode rootNode = doc.DocumentElement;

            if (rootNode.Name != SettingsXmlElementName)
            {
                throw new XmlException(
                          "Root XML node should be named \"" + SettingsXmlElementName + "\".  Got: " + rootNode.Name
                          );
            }

            List <IDatabaseConfig> databaseConfigs = new List <IDatabaseConfig>();

            foreach (XmlNode childNode in rootNode.ChildNodes)
            {
                switch (childNode.Name.ToLower())
                {
                case XmlLoader.DatabaseSettingsNodeName:
                    SqliteDatabaseConfig config = new SqliteDatabaseConfig();
                    config.LoadFromXml(childNode);
                    databaseConfigs.Add(config);
                    break;
                }
            }
            return(databaseConfigs);
        }