Example #1
0
        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;
        }
Example #2
0
        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();
        }