private static FermentableAdditionTypeAddition[] GetGrainBill(BTUnits units) { var grainBill = new FermentableAdditionTypeAddition[1]; grainBill[0] = new FermentableAdditionTypeAddition { name = String.Empty, type = FermentableBaseType.grain, color = NewColorType(0, ColorUnitType.L), origin = String.Empty, supplier = String.Empty, amount = NewMassType(0, units == BTUnits.Metric), add_after_boil = false, add_after_boilSpecified = false }; return grainBill; }
private static void ImportFermentables(beer_xml beerXMLv2, XElement xmlRecipe, RecipeType xmlBeerRecipe) { string str; var fermList = new List<FermentableAdditionTypeAddition>(); var qry = from xmlElements in xmlRecipe.Descendants("FERMENTABLE") select xmlElements; if (qry.Count() == 0) { Messages.Add(new Message { Type = MessageType.Error, Text = "No Fermentables found in input file." }); return; } foreach (var xmlElement in qry) { var xmlBeerFermentable = new FermentableAdditionTypeAddition(); xmlBeerFermentable.name = GetXmlString(xmlElement, "NAME", true); str = GetXmlString(xmlElement, "TYPE", true); switch (str.RemoveBlanks().ToLower().Trim()) { case "adjunct": xmlBeerFermentable.type = FermentableBaseType.adjunct; break; case "dryextract": xmlBeerFermentable.type = FermentableBaseType.dryextract; break; case "extract": xmlBeerFermentable.type = FermentableBaseType.extract; break; case "grain": xmlBeerFermentable.type = FermentableBaseType.grain; break; case "sugar": xmlBeerFermentable.type = FermentableBaseType.sugar; break; default: Messages.Add(new Message { Type = MessageType.Error, Text = String.Format("Required String element '{0}' is missing.", "FERMENTABLE") }); break; } xmlBeerFermentable.color = GetXmlColorType(xmlElement, "COLOR", true, ColorUnitType.L); xmlBeerFermentable.origin = GetXmlString(xmlElement, "ORIGIN", false); xmlBeerFermentable.supplier = GetXmlString(xmlElement, "SUPPLIER", false); xmlBeerFermentable.amount = GetXmlMassType(xmlElement, "AMOUNT", true, MassUnitType.kg); xmlBeerFermentable.add_after_boilSpecified = xmlElement.Element("ADD_AFTER_BOIL") != null; if (xmlBeerFermentable.add_after_boilSpecified) xmlBeerFermentable.add_after_boil = GetXmlBoolean(xmlElement, "ADD_AFTER_BOIL", true); fermList.Add(xmlBeerFermentable); } xmlBeerRecipe.ingredients.grain_bill = fermList.ToArray(); }