private static MiscellaneousAdditionTypeAddition[] GetMiscAddition(BTUnits units) { var miscAdditions = new MiscellaneousAdditionTypeAddition[1]; miscAdditions[0] = new MiscellaneousAdditionTypeAddition { name = String.Empty, type = MiscellaneousBaseType.other, use = MiscellaneousBaseUse.boil, Item = NewMassType(0.0m, units == BTUnits.Metric), time = NewTimeType(0.0m, TimeUnitType.min) }; return miscAdditions; }
private static void ImportMiscs(beer_xml beerXMLv2, XElement xmlRecipe, RecipeType xmlBeerRecipe) { var qry = from xmlElements in xmlRecipe.Descendants("MISC") select xmlElements; if (qry.Count() == 0) { Messages.Add(new Message { Type = MessageType.Error, Text = "No Yeasts found in input file." }); return; } string str; List<MiscellaneousAdditionTypeAddition> miscList = new List<MiscellaneousAdditionTypeAddition>(); foreach (var xmlElement in qry) { var xmlBeerMisc = new MiscellaneousAdditionTypeAddition(); xmlBeerMisc.name = GetXmlString(xmlElement, "NAME", true); str = GetXmlString(xmlElement, "TYPE", true); switch (str.RemoveBlanks().ToLower().Trim()) { case "spice": xmlBeerMisc.type = MiscellaneousBaseType.spice; break; case "fining": xmlBeerMisc.type = MiscellaneousBaseType.fining; break; case "wateragent": xmlBeerMisc.type = MiscellaneousBaseType.wateragent; break; case "herb": xmlBeerMisc.type = MiscellaneousBaseType.herb; break; case "fruit": xmlBeerMisc.type = MiscellaneousBaseType.fruit; break; case "flavor": xmlBeerMisc.type = MiscellaneousBaseType.flavor; break; case "other": xmlBeerMisc.type = MiscellaneousBaseType.other; break; default: Messages.Add(new Message { Type = MessageType.Error, Text = String.Format("Required String element '{0}' is missing.", "FORM") }); break; } str = GetXmlString(xmlElement, "USE", true); switch (str.RemoveBlanks().ToLower().Trim()) { case "boil": xmlBeerMisc.use = MiscellaneousBaseUse.boil; break; case "mash": xmlBeerMisc.use = MiscellaneousBaseUse.mash; break; case "secondary": xmlBeerMisc.use = MiscellaneousBaseUse.secondary; break; case "bottling": xmlBeerMisc.use = MiscellaneousBaseUse.bottling; break; default: Messages.Add(new Message { Type = MessageType.Error, Text = String.Format("Required String element '{0}' is missing.", "TYPE") }); break; } if (GetXmlBoolean(xmlElement, "AMOUNT_IS_WEIGHT", false)) xmlBeerMisc.Item = GetXmlMassType(xmlElement, "AMOUNT", true, MassUnitType.kg); else xmlBeerMisc.Item = GetXmlVolumeType(xmlElement, "AMOUNT", true, VolumeUnitType.l); xmlBeerMisc.time = GetXmlTimeType(xmlElement, "TIME", true, TimeUnitType.min); miscList.Add(xmlBeerMisc); } xmlBeerRecipe.ingredients.adjuncts = miscList.ToArray(); }