package models.database.importers; import java.util.Map; public class ElementParser { private Syntax syntax; private Element elt; public ElementParser(Syntax syntax) { this.syntax = syntax; this.elt = new Element("root"); } public void start(String tag, Map<String, String> attributes) { Element subelt = new Element(tag, attributes); this.elt.addAt(tag, subelt); this.elt = subelt; this.syntax = this.syntax.get(tag); } public void start(String tag) { start(tag, null); } public void end() { this.syntax.callback(this.elt); this.elt = this.elt.getParent(); this.syntax = this.syntax.getParent(); } public void text(String txt) { this.elt.addText(txt); } public Element getElement() { return this.elt; } @Override public String toString() { return "P" + this.syntax.toString(); } }