package husacct.validate.task.workspace.exporting.xml; import husacct.validate.domain.validation.Severity; import java.util.HashMap; import java.util.Map.Entry; import org.jdom2.Attribute; import org.jdom2.Element; public class ExportSeveritiesPerTypesPerProgrammingLanguages { public Element exportSeveritiesPerTypesPerProgrammingLanguages(HashMap<String, HashMap<String, Severity>> allSeveritiesPerTypesPerProgrammingLanguages) { Element severitiesPerTypesPerProgrammingLanguagesElement = new Element("severitiesPerTypesPerProgrammingLanguages"); for (Entry<String, HashMap<String, Severity>> programminglanguageEntry : allSeveritiesPerTypesPerProgrammingLanguages.entrySet()) { Element severityPerTypePerProgrammingLanguageElement = createElementWithoutContent("severityPerTypePerProgrammingLanguage", severitiesPerTypesPerProgrammingLanguagesElement); severityPerTypePerProgrammingLanguageElement.setAttribute(new Attribute("language", programminglanguageEntry.getKey())); for (Entry<String, Severity> severityPerType : programminglanguageEntry.getValue().entrySet()) { Element severityPerTypeElement = createElementWithoutContent("severityPerType", severityPerTypePerProgrammingLanguageElement); createElementWithContent("typeKey", severityPerType.getKey(), severityPerTypeElement); createElementWithContent("severityId", "" + severityPerType.getValue().getId().toString(), severityPerTypeElement); } } return severitiesPerTypesPerProgrammingLanguagesElement; } private void createElementWithContent(String name, String content, Element destination) { Element element = new Element(name); element.addContent(content); destination.addContent(element); } private Element createElementWithoutContent(String name, Element destination) { Element element = new Element(name); destination.addContent(element); return element; } }