Centreon_EventLog_2_Syslog.Program.LoadConfiguration C# (CSharp) Method

LoadConfiguration() static private method

Main load XML configuration file call sub load XML configuration file functions
static private LoadConfiguration ( ) : void
return void
        static void LoadConfiguration()
        {
            ConfigurationFile = "Configuration.xml";
            String exepath = Environment.GetCommandLineArgs()[0];
            String exedir = exepath.Substring(0, exepath.LastIndexOf('\\'));
            ConfigurationFile = exedir + "\\" + ConfigurationFile;

            XmlDocument xDoc = new XmlDocument();

            debInf.Level = 1;
            debInf.Versobe = 1;
            deb = new Debug("Debug.log", ref debInf);
            deb.Write("Main Program", "Load configuration", DateTime.Now, 2);

            try
            {
                xDoc.Load(@ConfigurationFile);

                XmlNode rootNode = xDoc.ChildNodes[1];

                foreach (XmlNode node in rootNode.ChildNodes)
                {
                    if (node.Name.CompareTo("program") == 0)
                    {
                        LoadConfigurationProgram(node);
                    }
                    else if (node.Name.CompareTo("syslog_server") == 0)
                    {
                        LoadSyslogConfiguration(node);

                        if (debInf.Versobe == 2)
                        {
                            deb.Write("Load Syslog Server Configuration", "Syslog server configuration: " + syslogServer.ToString(), DateTime.Now, 2);
                        }
                    }
                    else if (node.Name.CompareTo("filters") == 0)
                    {
                        LoadFilters(node);

                        if (debInf.Versobe == 2)
                        {
                            ArrayList list = new ArrayList(iFilters.Keys);
                            String[] eventLogNames = (String[])list.ToArray(typeof(string));

                            foreach (String eventLogName in eventLogNames)
                            {
                                ArrayList itemp = (ArrayList)iFilters[eventLogName];
                                ArrayList etemp = (ArrayList)eFilters[eventLogName];

                                int iItems = 0;
                                int eItems = 0;

                                if (itemp != null)
                                {
                                    iItems = itemp.Count;
                                }
                                if (etemp != null)
                                {
                                    eItems = etemp.Count;
                                }

                                deb.Write("Load configuration", iItems + " include filter(s) and " + eItems + " exclude filter(s) loaded for eventLog : " + eventLogName, DateTime.Now, 2);
                                itemp = null;
                                etemp = null;
                            }
                        }
                    }
                }
                xDoc = null;
            }
            catch (XmlException xe)
            {
                deb.Write("Load configuration", "101 - Load XML configuration - " + xe.Message, DateTime.Now, 1);
                deb.Write("Load configuration", "Program stop", DateTime.Now, 1);
                System.Environment.Exit(-1);
            }
            catch (NotSupportedException nse)
            {
                deb.Write("Load configuration", "102 - Load XML configuration - " + nse.Message, DateTime.Now, 1);
                deb.Write("Load configuration", "Program stop", DateTime.Now, 1);
                System.Environment.Exit(-1);
            }
            catch (Exception e)
            {
                deb.Write("Load configuration", "103 - Load XML configuration - " + e.Message, DateTime.Now, 1);
                deb.Write("Load configuration", "Program stop", DateTime.Now, 1);
                System.Environment.Exit(-1);
            }
        }