package com.plectix.simulator.io.xml; import javax.xml.stream.XMLStreamException; import com.plectix.simulator.staticanalysis.speciesenumeration.Species; import com.plectix.simulator.staticanalysis.speciesenumeration.SpeciesEnumeration; class SpeciesXMLWriter { private final SpeciesEnumeration species; public SpeciesXMLWriter(SpeciesEnumeration species) { this.species = species; } public final void write(OurXMLWriter writer) throws XMLStreamException { writer.writeStartElement("Reachables"); writer.writeAttribute("Name", "Species"); if (species.isUnbounded()) writer.writeAttribute("Cardinal", "Unbounded"); else { Integer cardinal = Integer.valueOf(species.getSpecies().size()); writer.writeAttribute("Cardinal", cardinal.toString()); if (cardinal != 0) { writer.writeStartElement("Set"); writer.writeAttribute("Name", "All Species"); for (Species spesie : species.getSpecies().values()) { writer.writeStartElement("Entry"); writer.writeAttribute("Type", "Close"); writer.writeAttribute("Weight", "1"); writer.writeAttribute("Data", spesie.getHashCode()); writer.writeEndElement(); } writer.writeEndElement(); } } writer.writeEndElement(); } }