1 package info.glogalcode.parameterLister.modules;
3 import info.glogalcode.parameterLister.OutputModule;
4 import info.glogalcode.parameterLister.OutputModuleException;
5 import java.io.OutputStream;
6 import java.io.PrintWriter;
10 * Just a simple XML output.
11 * For more complex documents, use {@linkplain javax.xml.stream.XMLStreamWriter}
13 * @author Ing. František Kučera (frantovo.cz)
15 public class XmlModule implements OutputModule {
18 public void process(OutputStream output, List<String> parameters) throws OutputModuleException {
19 try (PrintWriter out = new PrintWriter(output)) {
20 out.println("<parameters>");
21 for (String parameter : parameters) {
22 out.print("\t<parameter>");
23 out.print(escapeXmlText(parameter));
24 out.println("</parameter>");
27 out.println("</parameters>");
32 * @param s original text
33 * @return escaped text that can be safely concatenated between two XML tags (not safe for
37 private static String escapeXmlText(String s) {
38 return s.replaceAll("&", "&").replaceAll("<", "<").replaceAll(">", ">");