Esempio n. 1
0
        protected static ConfigurationItem GetConfigurationItemFromXmlNode(XmlNode setting)
        {
            ConfigurationItem ci = new ConfigurationItem();
            ci.Name = setting.Attributes["name"].Value;
            if (!setting.HasChildNodes && setting.Attributes["value"] != null)
                // value setting
                ci.Value = setting.Attributes["value"].Value;
            if (setting.Attributes["type"] != null)
                ci.Type = setting.Attributes["type"].Value;
            if (setting.Attributes["transferMode"] != null)
                ci.TransferMode = (ConfigurationTransferModes)Enum.Parse(typeof(ConfigurationTransferModes), setting.Attributes["transferMode"].Value);
            ci.XmlNode = setting;

            return ci;
        }
Esempio n. 2
0
        private void LoadData()
        {
            // load from files

            this._config_data = new Dictionary<string, ConfigurationItem>();

            string physSpawDir = Configuration.PhysicalSpawDirectory;

            // load main config
            XmlDocument configDoc = new XmlDocument();
            if (File.Exists(physSpawDir + "config\\spaw2.config"))
            {
                configDoc.Load(physSpawDir + "config\\spaw2.config");

                XmlNodeList settings = configDoc.DocumentElement.SelectNodes("setting");
                foreach (XmlNode setting in settings)
                {
                    ConfigurationItem ci = new ConfigurationItem();
                    ci.Name = setting.Attributes["name"].Value;
                    if (!setting.HasChildNodes && setting.Attributes["value"] != null)
                        // value setting
                        ci.Value = setting.Attributes["value"].Value;
                    if (setting.Attributes["type"] != null)
                        ci.Type = setting.Attributes["type"].Value;
                    if (setting.Attributes["transferMode"] != null)
                        ci.TransferMode = (ConfigurationTransferModes)Enum.Parse(typeof(ConfigurationTransferModes), setting.Attributes["transferMode"].Value);
                    ci.XmlNode = setting;

                    this._config_data.Add(ci.Name, ci);
                }

                configDoc.RemoveAll();

                // load plugin configs
                string[] pluginDirs = Directory.GetDirectories(physSpawDir + "plugins\\");
                foreach (string pluginDir in pluginDirs)
                {
                    if (Directory.Exists(pluginDir + "\\config\\"))
                    {
                        string[] pluginConfigs = Directory.GetFiles(pluginDir + "\\config\\", "*.config");
                        foreach (string pluginConfig in pluginConfigs)
                        {
                            configDoc.Load(pluginConfig);
                            settings = configDoc.DocumentElement.SelectNodes("setting");
                            foreach (XmlNode setting in settings)
                            {
                                ConfigurationItem ci = Configuration.GetConfigurationItemFromXmlNode(setting);
                                this._config_data.Add(ci.Name, ci);
                            }
                            configDoc.RemoveAll();
                        }
                    }
                }

                // load stored config if applicable
                if (!String.IsNullOrEmpty(HttpContext.Current.Request.QueryString["scid"]))
                    this.RestoreSecureConfig(HttpContext.Current.Request.QueryString["scid"]);
            }
            else
            {
                // no config file
                throw new FileNotFoundException("Main SPAW configuration file not found.", physSpawDir + "config/spaw2.config");
            }
        }
Esempio n. 3
0
 public ToolbarDropdown(string module, string name, Agents agent,
     ConfigurationItem data, string on_enabled_check, string on_status_check,
     string on_change)
     : base(module, name, agent)
 {
     if (data != null && !data.IsValueItem)
     {
         this.Data = new ListItemCollection();
         foreach(XmlNode item in data.XmlNode.ChildNodes)
             this.Data.Add(new ListItem(item.Attributes["value"].Value, item.Attributes["name"].Value));
     }
     this.OnEnabledCheck = on_enabled_check;
     this.OnStatusCheck = on_status_check;
     this.OnChange = on_change;
 }