/** * Méthode d'écriture d'un élément dans le {@link java.io.File} * * @param dotElement Le {@link files.dot.elements.DotElement} devant être écrit * @param indent L'indentation correspondante (en nombre d'espaces) * @throws IOException */ public void write(DotElement dotElement, int indent) throws IOException { StringBuilder elementWriter = new StringBuilder(); for (int i = 0; i < indent; i++) { elementWriter.append(" "); } elementWriter.append(dotElement.getId()); elementWriter.append(" "); elementWriter.append(convertAttributes(dotElement)); elementWriter.append(";\n"); this.write(elementWriter.toString()); }
/** * Méthode de conversion et d'écriture des attributs d'un {@link files.dot.elements.DotElement} * dans un fichier * * @param dotElement Le {@link files.dot.elements.DotElement} concerné * @return */ public String convertAttributes(DotElement dotElement) { StringBuilder dotAttributes = new StringBuilder(); int i = 0; HashMap<String, Object> attributes = dotElement.getAttributes(); dotAttributes.append("["); for (String s : attributes.keySet()) { dotAttributes.append(s); dotAttributes.append("="); dotAttributes.append(String.valueOf(attributes.get(s))); i++; if (i != attributes.keySet().size()) dotAttributes.append(","); } dotAttributes.append("]"); return dotAttributes.toString(); }