/*! loads the regions. */ private static void LoadAirlinerTypeConfiguration(string file) { var doc = new XmlDocument(); doc.Load(file); XmlElement root = doc.DocumentElement; XmlNodeList configurationsList = root?.SelectNodes("//configuration"); if (configurationsList != null) foreach (XmlElement element in configurationsList) { string name = element.Attributes["name"].Value; string id = element.Attributes["id"].Value; AirlinerType type = AirlinerTypes.GetType(element.Attributes["airliner"].Value); int fromYear = Convert.ToInt16(element.Attributes["yearfrom"].Value); int toYear = Convert.ToInt16(element.Attributes["yearto"].Value); /*airliner="Boeing 747-400" name="Boeing 747-400 (1998)" yearfrom="1998" yearto="2199" id="301"*/ XmlNodeList classesList = element.SelectNodes("classes/class"); var configuration = new AirlinerTypeConfiguration( name, type, new Period<DateTime>(new DateTime(fromYear, 1, 1), new DateTime(toYear, 12, 31)), true) {ID = id}; if (classesList != null) foreach (XmlElement classElement in classesList) { int seating = Convert.ToInt16(classElement.Attributes["seating"].Value); var classType = (AirlinerClass.ClassType) Enum.Parse(typeof (AirlinerClass.ClassType), classElement.Attributes["type"].Value); var classConf = new AirlinerClassConfiguration(classType, seating, seating); foreach ( AirlinerFacility.FacilityType facType in Enum.GetValues(typeof (AirlinerFacility.FacilityType))) { string facUid = classElement.Attributes[facType.ToString()].Value; classConf.AddFacility(AirlinerFacilities.GetFacility(facType, facUid)); } configuration.AddClassConfiguration(classConf); } Configurations.AddConfiguration(configuration); } }