List of usage examples for org.dom4j.io OutputFormat createPrettyPrint
public static OutputFormat createPrettyPrint()
From source file:VersionRelease.java
License:Open Source License
public void run() { processDir(jbossHome);/* ww w .ja v a 2 s . co m*/ try { DocumentFactory df = DocumentFactory.getInstance(); Document doc = df.createDocument(); Element root = doc.addElement("jar-versions"); Iterator iter = jars.iterator(); while (iter.hasNext()) { JarInfo info = (JarInfo) iter.next(); info.writeXML(root); } File versionsXml = new File(jbossHome, "jar-versions.xml"); FileWriter versionInfo = new FileWriter(versionsXml); OutputFormat outformat = OutputFormat.createPrettyPrint(); XMLWriter writer = new XMLWriter(versionInfo, outformat); writer.setEscapeText(true); writer.write(doc); writer.flush(); versionInfo.close(); } catch (IOException e) { e.printStackTrace(); } }
From source file:Main2.java
License:Open Source License
public static void main(String[] args) throws IOException { boolean printTokens = false; boolean showTree = false; boolean produceXml = false; boolean produceSource = false; for (int i = 2; i < args.length; i++) { if (args[i].length() == 2) { switch (args[i].charAt(1)) { case 't': printTokens = true;/*w w w. j a v a2s. c o m*/ break; case 'v': showTree = true; break; case 'x': produceXml = true; break; case 's': produceSource = true; break; } } } ASTWindow window = showTree ? new ASTWindow("AST") : null; Document doc = null; if (produceXml) { doc = DocumentHelper.createDocument(DocumentHelper.createElement("asp")); } try { File f = new File(args[0]); File base = new File(args[1]); if (printTokens) { AspStreamSelector selector = new AspStreamSelector(f, base); printApsTokens(selector); if (!(showTree || produceXml)) { return; } } AspParser asp = new AspParser(base, new File("out")); asp.setGenerateCode(produceSource); Map vbTokens = null; Map jsTokens = null; Map tokens = null; List astList = asp.parseFile(f, true); for (Iterator it = astList.iterator(); it.hasNext();) { Object[] val = (Object[]) it.next(); boolean isVb = ((Boolean) val[0]).booleanValue(); if (showTree) { if (isVb) { window.addAST("Original VB", createRoot("VB ASP", (AST) val[1])); if (val.length > 2) { window.addAST("VB Generated", createRoot("VB", (AST) val[2])); } } else { window.addAST("ASP JS", createRoot("JS", (AST) val[1])); window.addAST("JS Generated", createRoot("JS", (AST) val[2])); } } if (produceXml) { String rootName; if (isVb) { rootName = "vb"; if (vbTokens == null) { vbTokens = new HashMap(); putTokens(new VbsTree(), vbTokens); } tokens = vbTokens; } else { rootName = "js"; if (jsTokens == null) { jsTokens = new HashMap(); putTokens(new JsTree(), jsTokens); } tokens = jsTokens; } Element nodeEl = doc.getRootElement().addElement(rootName); Element orig = nodeEl.addElement("original"); new XmlTestBuilder(orig, tokens).visit((AST) val[1]); Element trans = nodeEl.addElement("translated"); new XmlTestBuilder(trans, tokens).visit((AST) val[2]); } } if (produceXml) { OutputFormat of = OutputFormat.createPrettyPrint(); of.setEncoding("ISO-8859-7"); XMLWriter xwriter = new XMLWriter(new FileWriter("asp.xml"), of); xwriter.write(doc); xwriter.close(); } if (showTree && window.hasAST()) { window.pack(); window.setVisible(true); window.setExtendedState(Frame.MAXIMIZED_BOTH); } } catch (Exception ex) { ex.printStackTrace(System.out); System.err.println("Error"); } }
From source file:$.MessageController.java
License:Apache License
/** * Converts input XML to "nice" XML. *//from w w w. ja v a2 s . com * @param original the original XML * @return pretty XML */ static String prettyPrintXML(String original) { try { OutputFormat format = OutputFormat.createPrettyPrint(); Document document = DocumentHelper.parseText(original); StringWriter sw = new StringWriter(); XMLWriter writer = new XMLWriter(sw, format); writer.write(document); return sw.toString(); } catch (Exception exc) { Log.debug("Error pretty-printing XML: ", exc); return original; } }
From source file:adr.main.AlcorAdrSettings.java
/** * ? ?? ? .xml //from w w w .j a v a 2 s. c o m */ public void SaveSettings() { try { Document document = DocumentHelper.createDocument(); Element root = document.addElement("Settings"); root.addElement("COM_Port").addText(m_pCOMPortSettings.GetPort()); root.addElement("COM_Baudrate").addText(Integer.toString(m_pCOMPortSettings.GetBaudRate())); if (m_pCOMPortSettings.GetDataBits() == SerialPort.DATABITS_5) root.addElement("COM_DataBits").addText("5"); else if (m_pCOMPortSettings.GetDataBits() == SerialPort.DATABITS_6) root.addElement("COM_DataBits").addText("6"); else if (m_pCOMPortSettings.GetDataBits() == SerialPort.DATABITS_7) root.addElement("COM_DataBits").addText("7"); else if (m_pCOMPortSettings.GetDataBits() == SerialPort.DATABITS_8) root.addElement("COM_DataBits").addText("8"); else { logger.warn( "Unknown COM_DataBits value '" + m_pCOMPortSettings.GetDataBits() + "'! Saving default!"); root.addElement("COM_DataBits").addText("8"); } switch (m_pCOMPortSettings.GetParity()) { case SerialPort.PARITY_NONE: root.addElement("COM_Parity").addText("None"); break; case SerialPort.PARITY_ODD: root.addElement("COM_Parity").addText("Odd"); break; case SerialPort.PARITY_EVEN: root.addElement("COM_Parity").addText("Even"); break; case SerialPort.PARITY_MARK: root.addElement("COM_Parity").addText("Mark"); break; case SerialPort.PARITY_SPACE: root.addElement("COM_Parity").addText("Space"); break; default: logger.warn("Unknown COM_Parity value '" + m_pCOMPortSettings.GetParity() + "'! Saving default!"); root.addElement("COM_Parity").addText("None"); break; } switch (m_pCOMPortSettings.GetStopBits()) { case SerialPort.STOPBITS_1: root.addElement("COM_StopBits").addText("1"); break; case SerialPort.STOPBITS_2: root.addElement("COM_StopBits").addText("2"); break; default: logger.warn( "Unknown COM_StopBits value '" + m_pCOMPortSettings.GetStopBits() + "'! Saving default!"); root.addElement("COM_StopBits").addText("1"); break; } OutputFormat format = OutputFormat.createPrettyPrint(); //TODO String strSettingsXmlFile = "alcor.adr.settings.xml";//System.getenv( "AMS_ROOT") + "/etc/settings.ams.xml"; XMLWriter writer = new XMLWriter(new FileWriter(strSettingsXmlFile), format); writer.write(document); writer.close(); } catch (IOException ex) { logger.error("IOException caught while saving settings!", ex); } }
From source file:ams.AMSDevSerialNumbers.java
/** * Saves entered numbers to XML file//from w w w. j a v a2s . c o m */ public void SaveDevNumsToXML() { try { Document document = DocumentHelper.createDocument(); Element root = document.addElement("Settings"); root.addElement("Device1").addText(m_strDev1SerialNumber); root.addElement("Device2").addText(m_strDev2SerialNumber); root.addElement("Device3").addText(m_strDev3SerialNumber); root.addElement("Device4").addText(m_strDev4SerialNumber); root.addElement("Device5").addText(m_strDev5SerialNumber); root.addElement("Device6").addText(m_strDev6SerialNumber); root.addElement("Device7").addText(m_strDev7SerialNumber); root.addElement("Device8").addText(m_strDev8SerialNumber); OutputFormat format = OutputFormat.createPrettyPrint(); String strSerialsXmlFile = System.getenv("AMS_ROOT") + "/serials.xml"; XMLWriter writer = new XMLWriter(new FileWriter(strSerialsXmlFile), format); writer.write(document); writer.close(); } catch (IOException ex) { logger.error("IOException caught while saving serials!", ex); } }
From source file:ams.AMSSettings.java
/** * ? ?? ? .xml /*from w ww. ja v a 2 s . co m*/ */ public void SaveSettings() { try { Document document = DocumentHelper.createDocument(); Element root = document.addElement("Settings"); root.addElement("COM_Port").addText(m_pCOMPortSettings.GetPort()); root.addElement("COM_Baudrate").addText(Integer.toString(m_pCOMPortSettings.GetBaudRate())); if (m_pCOMPortSettings.GetDataBits() == SerialPort.DATABITS_5) root.addElement("COM_DataBits").addText("5"); else if (m_pCOMPortSettings.GetDataBits() == SerialPort.DATABITS_6) root.addElement("COM_DataBits").addText("6"); else if (m_pCOMPortSettings.GetDataBits() == SerialPort.DATABITS_7) root.addElement("COM_DataBits").addText("7"); else if (m_pCOMPortSettings.GetDataBits() == SerialPort.DATABITS_8) root.addElement("COM_DataBits").addText("8"); else { logger.warn( "Unknown COM_DataBits value '" + m_pCOMPortSettings.GetDataBits() + "'! Saving default!"); root.addElement("COM_DataBits").addText("8"); } switch (m_pCOMPortSettings.GetParity()) { case SerialPort.PARITY_NONE: root.addElement("COM_Parity").addText("None"); break; case SerialPort.PARITY_ODD: root.addElement("COM_Parity").addText("Odd"); break; case SerialPort.PARITY_EVEN: root.addElement("COM_Parity").addText("Even"); break; case SerialPort.PARITY_MARK: root.addElement("COM_Parity").addText("Mark"); break; case SerialPort.PARITY_SPACE: root.addElement("COM_Parity").addText("Space"); break; default: logger.warn("Unknown COM_Parity value '" + m_pCOMPortSettings.GetParity() + "'! Saving default!"); root.addElement("COM_Parity").addText("None"); break; } switch (m_pCOMPortSettings.GetStopBits()) { case SerialPort.STOPBITS_1: root.addElement("COM_StopBits").addText("1"); break; case SerialPort.STOPBITS_2: root.addElement("COM_StopBits").addText("2"); break; default: logger.warn( "Unknown COM_StopBits value '" + m_pCOMPortSettings.GetStopBits() + "'! Saving default!"); root.addElement("COM_StopBits").addText("1"); break; } Element adams = root.addElement("Devices"); adams.addElement("ADC1").addText(m_strADC1Address); adams.addElement("ADC2").addText(m_strADC2Address); adams.addElement("DAC1").addText(m_strDAC1Address); adams.addElement("DAC2").addText(m_strDAC2Address); adams.addElement("REL1").addText(m_strREL1Address); adams.addElement("ADC3").addText(m_strADC3Address); adams.addElement("ADC4").addText(m_strADC4Address); adams.addElement("DAC3").addText(m_strDAC3Address); adams.addElement("DAC4").addText(m_strDAC4Address); adams.addElement("REL2").addText(m_strREL2Address); // ***** ***** ***** ***** ***** // //Iterator it = AMSConstants.getInstance().T_DEVICES.iterator(); //while( it.hasNext()) { for (int nDevice = AMSConstants.T_DEVICE1; nDevice <= AMSConstants.T_DEVICE8; nDevice++) { //int nDevice = ( int) it.next(); Element device = root.addElement("Device" + nDevice + "_channels"); Element devAn = device.addElement("anode"); devAn.addElement("ADC_V_DEV") .addText("" + ((AMSSettingsTDev) m_mapDevs.get(nDevice)).GetAnoAdcVoltDev()); devAn.addElement("ADC_V_CHAN") .addText("" + ((AMSSettingsTDev) m_mapDevs.get(nDevice)).GetAnoAdcVoltChan()); devAn.addElement("ADC_C_DEV") .addText("" + ((AMSSettingsTDev) m_mapDevs.get(nDevice)).GetAnoAdcCurrDev()); devAn.addElement("ADC_C_CHAN") .addText("" + ((AMSSettingsTDev) m_mapDevs.get(nDevice)).GetAnoAdcCurrChan()); devAn.addElement("DAC_DEV").addText("" + ((AMSSettingsTDev) m_mapDevs.get(nDevice)).GetAnoDacDev()); devAn.addElement("DAC_CHAN") .addText("" + ((AMSSettingsTDev) m_mapDevs.get(nDevice)).GetAnoDacChan()); devAn.addElement("REL_DEV").addText("" + ((AMSSettingsTDev) m_mapDevs.get(nDevice)).GetAnoRelDev()); devAn.addElement("REL_CHAN") .addText("" + ((AMSSettingsTDev) m_mapDevs.get(nDevice)).GetAnoRelChan()); Element devTu = device.addElement("tubulation"); devTu.addElement("ADC_V_DEV") .addText("" + ((AMSSettingsTDev) m_mapDevs.get(nDevice)).GetTubAdcVoltDev()); devTu.addElement("ADC_V_CHAN") .addText("" + ((AMSSettingsTDev) m_mapDevs.get(nDevice)).GetTubAdcVoltChan()); devTu.addElement("ADC_C_DEV") .addText("" + ((AMSSettingsTDev) m_mapDevs.get(nDevice)).GetTubAdcCurrDev()); devTu.addElement("ADC_C_CHAN") .addText("" + ((AMSSettingsTDev) m_mapDevs.get(nDevice)).GetTubAdcCurrChan()); devTu.addElement("DAC_DEV").addText("" + ((AMSSettingsTDev) m_mapDevs.get(nDevice)).GetTubDacDev()); devTu.addElement("DAC_CHAN") .addText("" + ((AMSSettingsTDev) m_mapDevs.get(nDevice)).GetTubDacChan()); devTu.addElement("REL_DEV").addText("" + ((AMSSettingsTDev) m_mapDevs.get(nDevice)).GetTubRelDev()); devTu.addElement("REL_CHAN") .addText("" + ((AMSSettingsTDev) m_mapDevs.get(nDevice)).GetTubRelChan()); } OutputFormat format = OutputFormat.createPrettyPrint(); String strSettingsXmlFile = System.getenv("AMS_ROOT") + "/settings.xml"; XMLWriter writer = new XMLWriter(new FileWriter(strSettingsXmlFile), format); writer.write(document); writer.close(); } catch (IOException ex) { logger.error("IOException caught while saving settings!", ex); } }
From source file:ams.devices.AMSCalibration.java
public void SaveCalibration() { try {/*ww w. ja v a 2 s . c o m*/ Document document = DocumentHelper.createDocument(); Element root = document.addElement("Calibration"); AMSCalibrationUnit unit = (AMSCalibrationUnit) m_mapCalibrationUnits.get(AMSConstants.ADC1); Element anodes = root.addElement("ADC1"); anodes.addElement("ADC1_0_A").addText(String.format("%.3f", unit.GetSlope(AMSConstants.CHANNEL1))); anodes.addElement("ADC1_0_B").addText(String.format("%.3f", unit.GetShift(AMSConstants.CHANNEL1))); anodes.addElement("ADC1_1_A").addText(String.format("%.3f", unit.GetSlope(AMSConstants.CHANNEL2))); anodes.addElement("ADC1_1_B").addText(String.format("%.3f", unit.GetShift(AMSConstants.CHANNEL2))); anodes.addElement("ADC1_2_A").addText(String.format("%.3f", unit.GetSlope(AMSConstants.CHANNEL3))); anodes.addElement("ADC1_2_B").addText(String.format("%.3f", unit.GetShift(AMSConstants.CHANNEL3))); anodes.addElement("ADC1_3_A").addText(String.format("%.3f", unit.GetSlope(AMSConstants.CHANNEL4))); anodes.addElement("ADC1_3_B").addText(String.format("%.3f", unit.GetShift(AMSConstants.CHANNEL4))); anodes.addElement("ADC1_4_A").addText(String.format("%.3f", unit.GetSlope(AMSConstants.CHANNEL5))); anodes.addElement("ADC1_4_B").addText(String.format("%.3f", unit.GetShift(AMSConstants.CHANNEL5))); anodes.addElement("ADC1_5_A").addText(String.format("%.3f", unit.GetSlope(AMSConstants.CHANNEL6))); anodes.addElement("ADC1_5_B").addText(String.format("%.3f", unit.GetShift(AMSConstants.CHANNEL6))); anodes.addElement("ADC1_6_A").addText(String.format("%.3f", unit.GetSlope(AMSConstants.CHANNEL7))); anodes.addElement("ADC1_6_B").addText(String.format("%.3f", unit.GetShift(AMSConstants.CHANNEL7))); anodes.addElement("ADC1_7_A").addText(String.format("%.3f", unit.GetSlope(AMSConstants.CHANNEL8))); anodes.addElement("ADC1_7_B").addText(String.format("%.3f", unit.GetShift(AMSConstants.CHANNEL8))); unit = (AMSCalibrationUnit) m_mapCalibrationUnits.get(AMSConstants.ADC2); anodes = root.addElement("ADC2"); anodes.addElement("ADC2_0_A").addText(String.format("%.3f", unit.GetSlope(AMSConstants.CHANNEL1))); anodes.addElement("ADC2_0_B").addText(String.format("%.3f", unit.GetShift(AMSConstants.CHANNEL1))); anodes.addElement("ADC2_1_A").addText(String.format("%.3f", unit.GetSlope(AMSConstants.CHANNEL2))); anodes.addElement("ADC2_1_B").addText(String.format("%.3f", unit.GetShift(AMSConstants.CHANNEL2))); anodes.addElement("ADC2_2_A").addText(String.format("%.3f", unit.GetSlope(AMSConstants.CHANNEL3))); anodes.addElement("ADC2_2_B").addText(String.format("%.3f", unit.GetShift(AMSConstants.CHANNEL3))); anodes.addElement("ADC2_3_A").addText(String.format("%.3f", unit.GetSlope(AMSConstants.CHANNEL4))); anodes.addElement("ADC2_3_B").addText(String.format("%.3f", unit.GetShift(AMSConstants.CHANNEL4))); anodes.addElement("ADC2_4_A").addText(String.format("%.3f", unit.GetSlope(AMSConstants.CHANNEL5))); anodes.addElement("ADC2_4_B").addText(String.format("%.3f", unit.GetShift(AMSConstants.CHANNEL5))); anodes.addElement("ADC2_5_A").addText(String.format("%.3f", unit.GetSlope(AMSConstants.CHANNEL6))); anodes.addElement("ADC2_5_B").addText(String.format("%.3f", unit.GetShift(AMSConstants.CHANNEL6))); anodes.addElement("ADC2_6_A").addText(String.format("%.3f", unit.GetSlope(AMSConstants.CHANNEL7))); anodes.addElement("ADC2_6_B").addText(String.format("%.3f", unit.GetShift(AMSConstants.CHANNEL7))); anodes.addElement("ADC2_7_A").addText(String.format("%.3f", unit.GetSlope(AMSConstants.CHANNEL8))); anodes.addElement("ADC2_7_B").addText(String.format("%.3f", unit.GetShift(AMSConstants.CHANNEL8))); unit = (AMSCalibrationUnit) m_mapCalibrationUnits.get(AMSConstants.ADC3); anodes = root.addElement("ADC3"); anodes.addElement("ADC3_0_A").addText(String.format("%.3f", unit.GetSlope(AMSConstants.CHANNEL1))); anodes.addElement("ADC3_0_B").addText(String.format("%.3f", unit.GetShift(AMSConstants.CHANNEL1))); anodes.addElement("ADC3_1_A").addText(String.format("%.3f", unit.GetSlope(AMSConstants.CHANNEL2))); anodes.addElement("ADC3_1_B").addText(String.format("%.3f", unit.GetShift(AMSConstants.CHANNEL2))); anodes.addElement("ADC3_2_A").addText(String.format("%.3f", unit.GetSlope(AMSConstants.CHANNEL3))); anodes.addElement("ADC3_2_B").addText(String.format("%.3f", unit.GetShift(AMSConstants.CHANNEL3))); anodes.addElement("ADC3_3_A").addText(String.format("%.3f", unit.GetSlope(AMSConstants.CHANNEL4))); anodes.addElement("ADC3_3_B").addText(String.format("%.3f", unit.GetShift(AMSConstants.CHANNEL4))); anodes.addElement("ADC3_4_A").addText(String.format("%.3f", unit.GetSlope(AMSConstants.CHANNEL5))); anodes.addElement("ADC3_4_B").addText(String.format("%.3f", unit.GetShift(AMSConstants.CHANNEL5))); anodes.addElement("ADC3_5_A").addText(String.format("%.3f", unit.GetSlope(AMSConstants.CHANNEL6))); anodes.addElement("ADC3_5_B").addText(String.format("%.3f", unit.GetShift(AMSConstants.CHANNEL6))); anodes.addElement("ADC3_6_A").addText(String.format("%.3f", unit.GetSlope(AMSConstants.CHANNEL7))); anodes.addElement("ADC3_6_B").addText(String.format("%.3f", unit.GetShift(AMSConstants.CHANNEL7))); anodes.addElement("ADC3_7_A").addText(String.format("%.3f", unit.GetSlope(AMSConstants.CHANNEL8))); anodes.addElement("ADC3_7_B").addText(String.format("%.3f", unit.GetShift(AMSConstants.CHANNEL8))); unit = (AMSCalibrationUnit) m_mapCalibrationUnits.get(AMSConstants.ADC4); anodes = root.addElement("ADC4"); anodes.addElement("ADC4_0_A").addText(String.format("%.3f", unit.GetSlope(AMSConstants.CHANNEL1))); anodes.addElement("ADC4_0_B").addText(String.format("%.3f", unit.GetShift(AMSConstants.CHANNEL1))); anodes.addElement("ADC4_1_A").addText(String.format("%.3f", unit.GetSlope(AMSConstants.CHANNEL2))); anodes.addElement("ADC4_1_B").addText(String.format("%.3f", unit.GetShift(AMSConstants.CHANNEL2))); anodes.addElement("ADC4_2_A").addText(String.format("%.3f", unit.GetSlope(AMSConstants.CHANNEL3))); anodes.addElement("ADC4_2_B").addText(String.format("%.3f", unit.GetShift(AMSConstants.CHANNEL3))); anodes.addElement("ADC4_3_A").addText(String.format("%.3f", unit.GetSlope(AMSConstants.CHANNEL4))); anodes.addElement("ADC4_3_B").addText(String.format("%.3f", unit.GetShift(AMSConstants.CHANNEL4))); anodes.addElement("ADC4_4_A").addText(String.format("%.3f", unit.GetSlope(AMSConstants.CHANNEL5))); anodes.addElement("ADC4_4_B").addText(String.format("%.3f", unit.GetShift(AMSConstants.CHANNEL5))); anodes.addElement("ADC4_5_A").addText(String.format("%.3f", unit.GetSlope(AMSConstants.CHANNEL6))); anodes.addElement("ADC4_5_B").addText(String.format("%.3f", unit.GetShift(AMSConstants.CHANNEL6))); anodes.addElement("ADC4_6_A").addText(String.format("%.3f", unit.GetSlope(AMSConstants.CHANNEL7))); anodes.addElement("ADC4_6_B").addText(String.format("%.3f", unit.GetShift(AMSConstants.CHANNEL7))); anodes.addElement("ADC4_7_A").addText(String.format("%.3f", unit.GetSlope(AMSConstants.CHANNEL8))); anodes.addElement("ADC4_7_B").addText(String.format("%.3f", unit.GetShift(AMSConstants.CHANNEL8))); OutputFormat format = OutputFormat.createPrettyPrint(); String strCalibrationFilePathName = System.getenv("AMS_ROOT") + "/calibration.xml"; XMLWriter writer = new XMLWriter(new FileWriter(strCalibrationFilePathName), format); writer.write(document); writer.close(); } catch (IOException ex) { logger.error("IOException caught while saving calibration!", ex); } }
From source file:architecture.common.license.io.LicenseReader.java
License:Apache License
public String prettyPrintLicense(String decryptedLicenseKey) throws LicenseException { try {// w w w. jav a2 s. co m StringReader reader = new StringReader(decryptedLicenseKey); org.dom4j.Document doc = (new SAXReader()).read(reader); reader.close(); OutputFormat outputFormat = OutputFormat.createPrettyPrint(); outputFormat.setNewlines(true); outputFormat.setTrimText(false); StringWriter writer = new StringWriter(); XMLWriter xmlWriter = new XMLWriter(writer, outputFormat); xmlWriter.write(doc); writer.close(); return writer.toString(); } catch (Exception e) { throw new LicenseException(e); } }
From source file:architecture.common.lifecycle.internal.XmlApplicationPropertiesOld.java
License:Apache License
private synchronized void saveProperties() { Writer writer = null;//from w ww . ja v a 2 s . co m boolean error = false; File tempFile = null; try { tempFile = new File(file.getParentFile(), (new StringBuilder()).append(file.getName()).append(".tmp").toString()); writer = new OutputStreamWriter(new FileOutputStream(tempFile), ApplicationConstants.DEFAULT_CHAR_ENCODING); XMLWriter xmlWriter = new XMLWriter(writer, OutputFormat.createPrettyPrint()); xmlWriter.write(doc); } catch (Exception e) { log.error((new StringBuilder()).append("Unable to write to file ").append(file.getName()).append(".tmp") .append(": ").append(e.getMessage()).toString()); error = true; } finally { try { writer.flush(); writer.close(); } catch (Exception e) { log.error(e); error = true; } } if (!error) { error = false; if (file.exists() && !file.delete()) { log.error((new StringBuilder()).append("Error deleting property file: ") .append(file.getAbsolutePath()).toString()); return; } try { writer = new OutputStreamWriter(new FileOutputStream(file), ApplicationConstants.DEFAULT_CHAR_ENCODING); XMLWriter xmlWriter = new XMLWriter(writer, OutputFormat.createPrettyPrint()); xmlWriter.write(doc); } catch (Exception e) { log.error((new StringBuilder()).append("Unable to write to file '").append(file.getName()) .append("': ").append(e.getMessage()).toString()); error = true; try { file.delete(); } catch (Exception fe) { } } finally { try { writer.flush(); writer.close(); } catch (Exception e) { log.error(e); error = true; } } if (!error) tempFile.delete(); } }
From source file:architecture.common.xml.XmlProperties.java
License:Apache License
/** * Saves the properties to disk as an XML document. A temporary file is used * during the writing process for maximum safety. *//*from w ww.j a v a 2 s . c om*/ private synchronized void saveProperties() { boolean error = false; // Write data out to a temporary file first. File tempFile = null; Writer writer = null; try { tempFile = new File(file.getParentFile(), file.getName() + ".tmp"); writer = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(tempFile), "UTF-8")); OutputFormat prettyPrinter = OutputFormat.createPrettyPrint(); XmlWriter xmlWriter = new XmlWriter(writer, prettyPrinter); xmlWriter.write(document); } catch (Exception e) { log.error(e.getMessage(), e); // There were errors so abort replacing the old property file. error = true; } finally { if (writer != null) { try { writer.close(); } catch (IOException e1) { log.error(e1.getMessage(), e1); error = true; } } } // No errors occured, so delete the main file. if (!error) { // Delete the old file so we can replace it. if (!file.delete()) { log.error(L10NUtils.format("002156", file.getAbsolutePath())); return; } // Copy new contents to the file. try { copy(tempFile, file); } catch (Exception e) { log.error(e.getMessage(), e); // There were errors so abort replacing the old property file. error = true; } // If no errors, delete the temp file. if (!error) { tempFile.delete(); } } }