public ConfigurationLoader() { commandsPerInput = new CommandsPerInput(); OMD.Main.Logger.Info("Start scanning the directory for config..."); string[] configPaths = Directory.GetFiles(configPath, configPattern); for (int i = 0; i < configPaths.Length; i++) { string currentConfigPath = configPaths[i]; OMD.Main.Logger.Info("Read config file: " + currentConfigPath); XmlSerializer serializer = new XmlSerializer(typeof(Configuration)); using (FileStream fileStream = new FileStream(currentConfigPath, FileMode.Open)) { Configuration config = (Configuration)serializer.Deserialize(fileStream); foreach (Input input in config.inputs) { commandsPerInput.AddInput(input.phrase, input.actions); } } } OMD.Main.Logger.Info("Number of inputs in total: " + commandsPerInput.NumberOfInputs()); }