List of usage examples for org.dom4j DocumentHelper createDocument
public static Document createDocument()
From source file:de.thischwa.pmcms.tool.ChecksumTool.java
License:LGPL
/** * Converting a Map with the file checksums to a dom. *///from ww w .j a va 2 s .c o m public static Document getDomChecksums(final Map<String, String> checksums) { Document dom = DocumentHelper.createDocument(); dom.setXMLEncoding(Constants.STANDARD_ENCODING); Element root = dom.addElement("checksums"); for (String name : checksums.keySet()) { Element fileElement = root.addElement("file"); Element nameElement = fileElement.addElement("name"); nameElement.addCDATA(name); Element hashElement = fileElement.addElement("checksum"); hashElement.addText(checksums.get(name)); } return dom; }
From source file:de.tud.kom.p2psim.impl.vis.util.Config.java
License:Open Source License
/** * Legt falls ntig eine neue Config-Datei mit Wurzelelement an *//*w w w.j a v a 2s .co m*/ private static void setupFile() { File file = new File(configFile); if (!file.exists()) { // falls Config-Datei noch nicht existiert try { file.createNewFile(); // neue Datei anlegen } catch (IOException e) { // TODO e.printStackTrace(); } config = DocumentHelper.createDocument(); config.addElement("config"); writeXMLFile(); } }
From source file:de.xaniox.heavyspleef.migration.GameMigrator.java
License:Open Source License
@SuppressWarnings("unchecked") @Override/*from w ww . j a v a2 s . co m*/ public void migrate(Configuration inputSource, File outputFolder, Object cookie) throws MigrationException { if (cookie == null || !(cookie instanceof List<?>)) { throw new MigrationException("Cookie must be a game of lists"); } countMigrated = 0; List<Game> gameList = (List<Game>) cookie; Set<String> gameNames = inputSource.getKeys(false); for (String name : gameNames) { ConfigurationSection section = inputSource.getConfigurationSection(name); File xmlFile = new File(outputFolder, name + FILE_EXTENSION); if (xmlFile.exists()) { //Rename this game as there is already a file xmlFile = new File(outputFolder, name + "_1" + FILE_EXTENSION); } XMLWriter writer = null; try { xmlFile.createNewFile(); GameAccessor accessor = new GameAccessor(heavySpleef); Document document = DocumentHelper.createDocument(); Element rootElement = document.addElement("game"); Game game = migrateGame(section, rootElement); if (game == null) { continue; } accessor.write(game, rootElement); gameList.add(game); OutputStream out = new FileOutputStream(xmlFile); writer = new XMLWriter(out, outputFormat); writer.write(document); ++countMigrated; } catch (IOException e) { throw new MigrationException(e); } finally { if (writer != null) { try { writer.close(); } catch (IOException e) { } } } } }
From source file:de.xaniox.heavyspleef.persistence.handler.CachingReadWriteHandler.java
License:Open Source License
@Override public void saveGame(Game game) throws IOException { File gameFile = new File(xmlFolder, game.getName() + ".xml"); if (!gameFile.exists()) { gameFile.createNewFile();//from w ww . j a v a 2 s . c o m } Document document = DocumentHelper.createDocument(); Element rootElement = document.addElement("game"); xmlContext.write(game, rootElement); File gameSchematicFolder = new File(schematicFolder, game.getName()); if (!gameSchematicFolder.exists()) { gameSchematicFolder.mkdir(); } XMLWriter writer = null; try { FileOutputStream out = new FileOutputStream(gameFile); writer = new XMLWriter(out, xmlOutputFormat); writer.write(document); } finally { if (writer != null) { writer.close(); } } for (File file : gameSchematicFolder.listFiles(FLOOR_SCHEMATIC_FILTER)) { String floorName = file.getName().substring(2, file.getName().length() - 6); if (game.isFloorPresent(floorName)) { continue; } file.delete(); } for (Floor floor : game.getFloors()) { File floorFile = new File(gameSchematicFolder, getFloorFileName(floor)); if (!floorFile.exists()) { floorFile.createNewFile(); } schematicContext.write(floorFile, floor); } }
From source file:de.xaniox.leaderboardextensions.ExtensionXmlHandler.java
License:Open Source License
public void saveExtensions(Set<GameExtension> extensions) throws IOException { if (!xmlFile.exists()) { xmlFile.createNewFile();//from w w w . j av a 2s. c o m } Document document = DocumentHelper.createDocument(); Element rootElement = document.addElement("extensions"); for (GameExtension extension : extensions) { Element extensionElement = rootElement.addElement("extension"); String name = registry.getExtensionName(extension.getClass()); extensionElement.addAttribute("name", name); context.write(extension, extensionElement); } XMLWriter xmlWriter = null; try (OutputStream out = new FileOutputStream(xmlFile); Writer writer = new OutputStreamWriter(out, UTF8)) { xmlWriter = new XMLWriter(writer, format); xmlWriter.write(document); xmlWriter.flush(); } finally { if (xmlWriter != null) { xmlWriter.close(); } } }
From source file:delphsim.model.Epidemia.java
License:Open Source License
/** * Guarda la informacin de esta epidemia en el archivo pasado como * parmetro, siguiendo el esquema del .xsd de la aplicacin. * @param archivoDestino El archivo destino donde se guardar el modelo. * @throws java.io.IOException Si hay problemas al escribir en disco. * @throws org.dom4j.DocumentException Si hay problemas al crear el objeto de tipo rbol. * @throws java.lang.Exception Si se produce algn otro problema. */// www . ja va 2 s . c o m public void guardarXML(File archivoDestino) throws IOException, DocumentException, Exception { // Primero crear el documento dom4j con la informacin del modelo Document documento = DocumentHelper.createDocument(); // Elemento raz epidemia Element elementoEpidemia = new DefaultElement("epidemia"); documento.setRootElement(elementoEpidemia); elementoEpidemia.addAttribute("xmlns:xsi", "http://www.w3.org/2001/XMLSchema-instance"); elementoEpidemia.addAttribute("xsi:noNamespaceSchemaLocation", "DelphSim1.18.xsd"); elementoEpidemia.addAttribute("unidadTiempo", this.unidadTiempo); // Elementos parmetros if (this.parametros != null) { for (Parametro param : this.parametros) { Element elementoParametro = param.volcarAXML(); elementoEpidemia.add(elementoParametro); } } // Elementos procesos if (this.procesos != null) { for (Proceso proc : this.procesos) { Element elementoProceso = proc.volcarAXML(); elementoEpidemia.add(elementoProceso); } } // Elemento poblacin Element elementoPoblacion = this.poblacion.volcarAXML(); elementoEpidemia.add(elementoPoblacion); // Elementos compartimentos for (Compartimento comp : this.compartimentos) { Element elementoCompartimento = comp.volcarAXML(); elementoEpidemia.add(elementoCompartimento); } // Luego crear el formato, stream y escritor de la salida OutputFormat formato = OutputFormat.createPrettyPrint(); formato.setEncoding("UTF-16"); formato.setIndent("\t"); formato.setNewLineAfterDeclaration(false); formato.setPadText(false); formato.setTrimText(true); formato.setXHTML(true); java.io.OutputStreamWriter salida = new java.io.OutputStreamWriter( new java.io.FileOutputStream(archivoDestino), "UTF-16"); XMLWriter escritor = new XMLWriter(salida, formato); // Y escribir escritor.write(documento); escritor.close(); }
From source file:delphsim.model.Resultado.java
License:Open Source License
/** * Mtodo esttico que exporta los valores obtenidos tras la simulacin al * formato XML.//from ww w . j a v a2 s . com * @param destino El archivo de destino. * @param nombres Los nombres de las distintas columnas/funciones. * @param definiciones La definicin de cada columna/funcin. * @param temps Array con los archivos temporales de los cuales obtener los * datos a exportar. * @param numPuntosTotal El nmero de puntos total que contienen los * archivos temporales. * @param numPuntosExportar El nmero de puntos que quiere obtener el usuario. * @throws java.io.IOException Si hubiera algn problema al crear el archivo en disco. */ public static void exportarComoXML(File destino, String[] nombres, String[] definiciones, File[] temps, long numPuntosTotal, long numPuntosExportar) throws IOException { // Crear el documento, el elemento 'raiz' y asignarlo org.dom4j.Document documento = DocumentHelper.createDocument(); DefaultElement elementoResultado = new DefaultElement("resultado"); documento.setRootElement(elementoResultado); // Creamos los bfers de lectura para leer los temporales BufferedReader[] buffers = new BufferedReader[temps.length]; for (int i = 0; i < temps.length; i++) { buffers[i] = new BufferedReader(new FileReader(temps[i])); } // Calculamos cada cuanto tenemos que guardar un punto double cadaCuanto; if (numPuntosTotal == numPuntosExportar) { cadaCuanto = 1.0d; } else { cadaCuanto = new Double(numPuntosTotal) / new Double(numPuntosExportar - 1); } long siguientePuntoExportar = 0; long contadorNumPuntoLeido = 0; long contadorNumPuntosExportados = 0; // Comenzamos a leer los temporales aadiendo elementos al documento String[] valores = new String[buffers.length]; for (int i = 0; i < buffers.length; i++) { valores[i] = buffers[i].readLine(); } // En el momento en que se lee un null, se termina while (valores[0] != null) { // Para cada punto que haya que exportar if (siguientePuntoExportar == contadorNumPuntoLeido) { DefaultElement nuevaFila = new DefaultElement("fila"); // Para el tiempo, nuevo elemento, su valor y aadirlo a la fila DefaultElement elementoTiempo = new DefaultElement("Tiempo"); elementoTiempo.setText(valores[0]); nuevaFila.add(elementoTiempo); // Lo mismo para cada linea, pero ademas con nombre y definicin for (int i = 1; i < valores.length; i++) { DefaultElement elementoLinea = new DefaultElement("Lnea" + i); elementoLinea.add(new DefaultAttribute("nombre", nombres[i])); elementoLinea.add(new DefaultAttribute("definicion", definiciones[i])); elementoLinea.setText(valores[i]); nuevaFila.add(elementoLinea); } // Y aadimos la nueva fila elementoResultado.add(nuevaFila); // Calculamos el siguiente punto a exportar contadorNumPuntosExportados++; siguientePuntoExportar = Math.round(cadaCuanto * contadorNumPuntosExportados); if (siguientePuntoExportar >= numPuntosTotal) { siguientePuntoExportar = numPuntosTotal - 1; } } // Leemos la siguiente lnea de los ficheros for (int i = 0; i < buffers.length; i++) { valores[i] = buffers[i].readLine(); } contadorNumPuntoLeido++; } // Cerramos los bfers y el archivo de salida for (int i = 0; i < buffers.length; i++) { buffers[i].close(); } // Imprimimos el documento como XML OutputFormat formato = OutputFormat.createPrettyPrint(); formato.setEncoding("UTF-16"); formato.setIndent("\t"); formato.setNewLineAfterDeclaration(false); formato.setPadText(false); formato.setTrimText(true); formato.setXHTML(true); OutputStreamWriter salida = new OutputStreamWriter(new FileOutputStream(destino), "UTF-16"); XMLWriter escritor = new XMLWriter(salida, formato); escritor.write(documento); escritor.flush(); escritor.close(); }
From source file:dk.nsi.stamdata.replication.webservice.AtomFeedWriter.java
License:Mozilla Public License
public <T extends View> org.w3c.dom.Document write(Class<T> viewClass, List<T> records) throws IOException { checkNotNull(viewClass);// ww w . j a va2 s.c om checkNotNull(records); String entityName = Views.getViewPath(viewClass); try { Document document = DocumentHelper.createDocument(); document.setXMLEncoding("utf-8"); // Start the feed. Element feed = document.addElement("atom:feed", ATOM_NS); // Get the namespace of the view class. String viewNS = viewClass.getPackage().getAnnotation(XmlSchema.class).namespace(); Namespace namespace = new Namespace(null, viewNS); document.getRootElement().add(namespace); writeFeedMetadata(entityName, feed); // Write each record as an ATOM entry. Marshaller marshaller = viewXmlHelper.createMarshaller(viewClass); marshaller.setProperty(Marshaller.JAXB_FRAGMENT, true); marshaller.setProperty(Marshaller.JAXB_ENCODING, STREAM_ENCODING); for (Object record : records) { View view = (View) record; writeEntry(feed, entityName, view, marshaller); } return convertToW3C(document); } catch (Exception e) { throw new IOException("Failed while writing ATOM feed.", e); } }
From source file:dk.nsi.stamdata.replication.webservice.RecordXmlGenerator.java
License:Mozilla Public License
public org.w3c.dom.Document generateXml(List<RecordMetadata> records, String register, String datatype, DateTime updated) throws TransformerException { String stamdataNamespaceUri = STAMDATA_NAMESPACE_URI_PREFIX + register; Document document = DocumentHelper.createDocument(); document.setXMLEncoding("utf-8"); Element root = document.addElement("atom:feed", ATOM_NAMESPACE_URI); addElement(root, ATOM_NAMESPACE_URI, "atom:id", String.format("tag:nsi.dk,2011:%s/%s/v1", register, datatype)); addElement(root, ATOM_NAMESPACE_URI, "atom:updated", AtomDate.toString(updated.toDate())); addElement(root, ATOM_NAMESPACE_URI, "atom:title", "Stamdata Registry Feed"); Element author = addElement(root, ATOM_NAMESPACE_URI, "atom:author", null); addElement(author, ATOM_NAMESPACE_URI, "atom:name", "National Sundheds IT"); for (RecordMetadata metadata : records) { Element entry = addElement(root, ATOM_NAMESPACE_URI, "atom:entry", null); String atomId = String.format("tag:nsi.dk,2011:%s/%s/v1/%d%07d", register, datatype, metadata.getModifiedDate().getMillis(), metadata.getPid()); addElement(entry, ATOM_NAMESPACE_URI, "atom:id", atomId); addElement(entry, ATOM_NAMESPACE_URI, "atom:title", null); addElement(entry, ATOM_NAMESPACE_URI, "atom:updated", AtomDate.toString(metadata.getModifiedDate().toDate())); Element content = addElement(entry, ATOM_NAMESPACE_URI, "atom:content", null); content.addAttribute("type", "application/xml"); Element recordElement = addElement(content, stamdataNamespaceUri, datatype, null); for (FieldSpecification fieldSpecification : recordSpecification.getFieldSpecs()) { addElement(recordElement, stamdataNamespaceUri, fieldSpecification.name, valueAsString(metadata.getRecord(), fieldSpecification)); }/* w w w . java2 s. c o m*/ DateTimeFormatter formatter = ISODateTimeFormat.dateTime(); addElement(recordElement, stamdataNamespaceUri, "ValidFrom", metadata.getValidFrom().toString(formatter)); if (metadata.getValidTo() == null) { addElement(recordElement, stamdataNamespaceUri, "ValidTo", END_OF_TIME.toString(formatter)); } else { addElement(recordElement, stamdataNamespaceUri, "ValidTo", metadata.getValidTo().toString(formatter)); } addElement(recordElement, stamdataNamespaceUri, "ModifiedDate", metadata.getModifiedDate().toString(formatter)); } return convertToW3C(document); }
From source file:edu.ku.brc.specify.tasks.services.CollectingEventLocalityKMLGenerator.java
License:Open Source License
/** * Write the KML out to a file.// w w w .j a v a 2 s .c o m * * @param filename the name of the output file * @throws IOException a file I/O exception occurred */ public void outputToFile(final String filename) throws IOException { Document document = DocumentHelper.createDocument(); Element root = document.addElement("kml").addAttribute("xmlns", KML_NAMESPACE_DECL); Element kmlDocument = root.addElement("Document"); if (StringUtils.isNotEmpty(description)) { kmlDocument.addElement("description").addText(description); } GenericKMLGenerator.generateStyle(kmlDocument, placemarkIconURL, balloonStyleBgColor, balloonStyleTextColor, balloonStyleText); boolean isDoingCollectingEvents = false; DataProviderSessionIFace session = null; try { session = DataProviderFactory.getInstance().createSession(); for (int i = 0; i < dataObjs.size(); ++i) { String label = labels.get(i); FormDataObjIFace dataObj = dataObjs.get(i); session.attach(dataObj); if (dataObj instanceof CollectingEvent) { generatePlacemark(kmlDocument, (CollectingEvent) dataObj, label); isDoingCollectingEvents = true; } else if (dataObj instanceof Locality) { generatePlacemark(kmlDocument, (Locality) dataObj, label); } else if (dataObj instanceof CollectionObject) { generatePlacemark(kmlDocument, (CollectionObject) dataObj, label); } } } catch (Exception ex) { ex.printStackTrace(); } finally { if (session != null) { session.close(); } } if (isDoingCollectingEvents) { /*String kmlStr = generatePathForLocalities(); if (kmlStr != null) { writer.write(kmlStr); }*/ } FileWriter out = new FileWriter(filename); OutputFormat format = OutputFormat.createPrettyPrint(); XMLWriter writer = new XMLWriter(out, format); writer.write(document); writer.close(); out.close(); }