Пример #1
0
        /// <summary>
        /// Loads the configuration from the specified file.
        /// </summary>
        public bool Load(string fileName, out string errMsg)
        {
            try
            {
                SetToDefault();

                XmlDocument xmlDoc = new XmlDocument();
                xmlDoc.Load(fileName);
                XmlElement rootElem = xmlDoc.DocumentElement;

                if (rootElem.SelectSingleNode("ListenerOptions") is XmlNode listenerOptionsNode)
                {
                    ListenerOptions.LoadFromXml(listenerOptionsNode);
                }

                if (rootElem.SelectSingleNode("ReverseConnection") is XmlElement reverseConnectionElem)
                {
                    ReverseConnectionOptions.Enabled = reverseConnectionElem.GetAttrAsBool("enabled");
                    ReverseConnectionOptions.LoadFromXml(reverseConnectionElem);
                }

                if (rootElem.SelectSingleNode("Instances") is XmlNode instancesNode)
                {
                    foreach (XmlElement instanceElem in instancesNode.SelectNodes("Instance"))
                    {
                        InstanceOptions instanceConfig = new InstanceOptions();
                        instanceConfig.LoadFromXml(instanceElem);
                        Instances.Add(instanceConfig);
                    }
                }

                errMsg = "";
                return(true);
            }
            catch (Exception ex)
            {
                errMsg = ex.BuildErrorMessage(CommonPhrases.LoadConfigError);
                return(false);
            }
        }
Пример #2
0
 /// <summary>
 /// Sets the default values.
 /// </summary>
 private void SetToDefault()
 {
     ListenerOptions          = new ListenerOptions();
     ReverseConnectionOptions = new ReverseConnectionOptions();
     Instances = new List <InstanceOptions>();
 }