Author: eschabell
Date: 2010-10-21 15:31:27 -0400 (Thu, 21 Oct 2010)
New Revision: 6775
Modified:
projects/migration_tool/trunk/pom.xml
projects/migration_tool/trunk/src/test/java/test/XSLTTest.java
Log:
Added some formatting on the output xml.
Modified: projects/migration_tool/trunk/pom.xml
===================================================================
--- projects/migration_tool/trunk/pom.xml 2010-10-21 19:26:28 UTC (rev 6774)
+++ projects/migration_tool/trunk/pom.xml 2010-10-21 19:31:27 UTC (rev 6775)
@@ -54,6 +54,20 @@
<version>4.8.1</version>
<scope>test</scope>
</dependency>
+ <dependency>
+ <groupId>dom4j</groupId>
+ <artifactId>dom4j</artifactId>
+ <version>1.6.1</version>
+ <type>jar</type>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>commons-lang</groupId>
+ <artifactId>commons-lang</artifactId>
+ <version>2.5</version>
+ <type>jar</type>
+ <scope>provided</scope>
+ </dependency>
</dependencies>
<build>
Modified: projects/migration_tool/trunk/src/test/java/test/XSLTTest.java
===================================================================
--- projects/migration_tool/trunk/src/test/java/test/XSLTTest.java 2010-10-21 19:26:28 UTC
(rev 6774)
+++ projects/migration_tool/trunk/src/test/java/test/XSLTTest.java 2010-10-21 19:31:27 UTC
(rev 6775)
@@ -8,9 +8,13 @@
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
+import java.io.StringReader;
+import java.io.StringWriter;
import java.net.URL;
import java.util.Scanner;
+import javax.xml.transform.OutputKeys;
+import javax.xml.transform.Source;
import javax.xml.transform.Templates;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerConfigurationException;
@@ -19,13 +23,14 @@
import javax.xml.transform.stream.StreamResult;
import javax.xml.transform.stream.StreamSource;
+import org.apache.commons.lang.StringUtils;
import org.junit.Before;
import org.junit.Test;
/**
* Test class to sort out the transformations of our use cases.
*
- * @author Marco Reitveld
+ * @author Marco Rietveld
*
*/
public class XSLTTest {
@@ -107,7 +112,8 @@
finally{
scanner.close();
}
- System.out.println(text);
+
+ System.out.println(prettyFormat(text.toString()));
}
/**
@@ -150,4 +156,36 @@
return resultFile;
}
+
+ /**
+ * Format XML into given indentation depth.
+ *
+ * @param input
+ * @param indent
+ * @return
+ */
+ private static String prettyFormat(String input, int indent) {
+ try {
+ Source xmlInput = new StreamSource(new StringReader(input));
+ StringWriter stringWriter = new StringWriter();
+ StreamResult xmlOutput = new StreamResult(stringWriter);
+ Transformer transformer = TransformerFactory.newInstance().newTransformer();
+ transformer.setOutputProperty(OutputKeys.INDENT, "yes");
+
transformer.setOutputProperty("{http://xml.apache.org/xslt}indent-am...;,
String.valueOf(indent));
+ transformer.transform(xmlInput, xmlOutput);
+ return xmlOutput.getWriter().toString();
+ } catch (Exception e) {
+ throw new RuntimeException(e);
+ }
+ }
+
+ /**
+ * Format with default indenting.
+ *
+ * @param input
+ * @return
+ */
+ private static String prettyFormat(String input) {
+ return prettyFormat(input, 2);
+ }
}