/// <summary>
        /// Load the config file.
        /// </summary>
        /// <returns></returns>
        private XmlDocument LoadConfig()
        {
            string      configPath = DashboardConfigurationLoader.CalculateDashboardConfigPath();
            XmlDocument document   = new XmlDocument();

            document.Load(configPath);
            return(document);
        }
示例#2
0
        /// <summary>
        /// Updates the configuration file.
        /// </summary>
        /// <param name="addSettings"></param>
        private void UpdateConfigurationFile(bool addSettings)
        {
            // Load the existing configuration file
            string      configFile = DashboardConfigurationLoader.CalculateDashboardConfigPath();
            XmlDocument configXml  = new XmlDocument();

            if (File.Exists(configFile))
            {
                FireMessage(TraceLevel.Verbose, "Loading configuration file");
                configXml.Load(configFile);

                // Add or update each setting
                bool configChanged = false;
                foreach (ConfigurationSetting setting in manifest.ConfigurationSettings)
                {
                    UpdateConfigurationSetting(configXml, setting, addSettings);
                    configChanged = true;
                }

                if (configChanged)
                {
                    // Save the updated configuration file
                    FireMessage(TraceLevel.Verbose, "Saving configuration file");
                    XmlWriterSettings settings = new XmlWriterSettings();
                    settings.CloseOutput      = true;
                    settings.ConformanceLevel = ConformanceLevel.Document;
                    settings.Indent           = true;
                    using (XmlWriter writer = XmlWriter.Create(configFile, settings))
                    {
                        configXml.Save(writer);
                        writer.Close();
                    }
                }
            }
            else
            {
                FireMessage(TraceLevel.Warning, "Configuration file does not exist");
            }
        }
        /// <summary>
        /// Save the config file.
        /// </summary>
        /// <param name="configFile"></param>
        private void SaveConfig(XmlDocument configFile)
        {
            string configPath = DashboardConfigurationLoader.CalculateDashboardConfigPath();

            configFile.Save(configPath);
        }