public static GeneratorElement ParseFromXml(Configuration options, XmlDocument doc, ParserValidationDelegate vd) { GeneratorElement generator = new GeneratorElement(); XmlNodeList elements = doc.DocumentElement.GetElementsByTagName("generator"); if (elements.Count == 0) { generator.Class = "Spring2.DataTierGenerator.Generator.CodeGenerator,Spring2.DataTierGenerator"; } else { generator.Class = elements[0].Attributes["class"].Value; generator.Tasks = TaskElement.ParseFromXml(options, elements[0], vd); generator.Tools = ToolElement.ParseFromXml(options, elements[0], vd); foreach (XmlNode node in GetChildNodes(elements[0], WriterElement.WRITER)) { generator.Writers.Add(new WriterElement(node)); } foreach (XmlNode node in GetChildNodes(elements[0], StylerElement.STYLER)) { generator.Stylers.Add(new StylerElement(node)); } } return(generator); }
/// <summary> /// Parse only method. Parses and adds all entities found in the given node and adds them to the given /// list. /// </summary> /// <param name="node"></param> /// <param name="generatorElements"></param> public static void ParseFromXml(XmlNode node, IList generatorElements) { if (node != null && generatorElements != null) { foreach (XmlNode generatorNode in node.ChildNodes) { if (generatorNode.NodeType.Equals(XmlNodeType.Element)) { GeneratorElement generatorElement = new GeneratorElement(); generatorElement.Class = GetAttributeValue(generatorNode, CLASS, generatorElement.Class); TaskElement.ParseFromXml(generatorNode, generatorElement.Tasks); ToolElement.ParseFromXml(generatorNode, generatorElement.Tools); foreach (XmlNode writer in GetChildNodes(generatorNode, WriterElement.WRITER)) { generatorElement.Writers.Add(new WriterElement(writer)); } foreach (XmlNode styler in GetChildNodes(generatorNode, StylerElement.STYLER)) { generatorElement.Stylers.Add(new StylerElement(styler)); } generatorElements.Add(generatorElement); } } } }
/// <summary> /// Parse only method. Parses and adds all entities found in the given node and adds them to the given /// list. /// </summary> /// <param name="node"></param> /// <param name="entityElements"></param> public static void ParseFromXml(XmlNode rootNode) { if (rootNode != null) { RootElement rootElement = new RootElement(); // ConfigElement.ParseFromXml(GetChildNodeByName(rootNode, "config"), rootElement.ConfigElements); ReportExtractionElement.ParseFromXml(GetChildNodeByName(rootNode, "reportextractions"), rootElement.ReportExtractions); EntityElement.ParseFromXml(GetChildNodeByName(rootNode, "entities"), rootElement.EntityElements); CollectionElement.ParseFromXml(GetChildNodeByName(rootNode, "collections"), rootElement.CollectionElements); EnumElement.ParseFromXml(GetChildNodeByName(rootNode, "enums"), rootElement.EnumElements); TypeElement.ParseFromXml(GetChildNodeByName(rootNode, "types"), rootElement.TypeElements); SqlTypeElement.ParseFromXml(GetChildNodeByName(rootNode, "sqltypes"), rootElement.SqlTypeElements); DatabaseElement.ParseFromXml(GetChildNodeByName(rootNode, "databases"), rootElement.DatabaseElements); GeneratorElement.ParseFromXml(GetChildNodeByName(rootNode, "generator"), rootElement.GeneratorElements); } }