in src/main/java/org/apache/easyant/core/report/XMLEasyAntReportWriter.java [55:117]
public void output(EasyAntReport easyAntReport, ConfigurationResolveReport report, OutputStream stream) {
OutputStreamWriter encodedOutStream;
try {
encodedOutStream = new OutputStreamWriter(stream, REPORT_ENCODING);
} catch (UnsupportedEncodingException e) {
throw new RuntimeException(REPORT_ENCODING + " is not known on your jvm", e);
}
PrintWriter out = new PrintWriter(new BufferedWriter(encodedOutStream));
ModuleRevisionId mrid = report.getModuleDescriptor().getModuleRevisionId();
// out.println("<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?>");
out.println("<?xml version=\"1.0\" encoding=\"" + REPORT_ENCODING + "\"?>");
out.println("<?xml-stylesheet type=\"text/xsl\" href=\"easyant-report.xsl\"?>");
out.println("<easyant-report version=\"1.0\">");
out.println("\t<info");
out.println("\t\torganisation=\"" + XMLHelper.escape(mrid.getOrganisation()) + "\"");
out.println("\t\tmodule=\"" + XMLHelper.escape(mrid.getName()) + "\"");
out.println("\t\trevision=\"" + XMLHelper.escape(mrid.getRevision()) + "\"");
if (mrid.getBranch() != null) {
out.println("\t\tbranch=\"" + XMLHelper.escape(mrid.getBranch()) + "\"");
}
Map<?, ?> extraAttributes = mrid.getExtraAttributes();
for (Map.Entry<?, ?> entry : extraAttributes.entrySet()) {
out.println("\t\textra-" + entry.getKey() + "=\"" + XMLHelper.escape(entry.getValue().toString()) + "\"");
}
out.println("\t\tconf=\"" + XMLHelper.escape(report.getConfiguration()) + "\"");
out.println("\t\tdate=\"" + DateUtil.format(report.getDate()) + "\"/>");
out.println("\t<description>");
out.println(report.getModuleDescriptor().getDescription());
out.println("\t</description>");
out.println("\t<configurations>");
for (Configuration configuration : easyAntReport.getModuleDescriptor().getConfigurations()) {
// deprecated file can be null (see Javadoc)
String deprecated = XMLHelper.escape(configuration.getDeprecated());
if (deprecated == null) {
// Avoid to display null in the report
deprecated = "";
}
out.println("\t\t<configuration name=\"" + XMLHelper.escape(configuration.getName()) + "\" description=\"" + XMLHelper.escape(configuration.getDescription()) + "\" extends=\"" + XMLHelper.escape(Arrays.toString(configuration.getExtends())) + "\" deprecated=\"" + deprecated + "\" visibility=\"" + XMLHelper.escape(configuration.getVisibility().toString()) + "\"/>");
}
out.println("\t</configurations>");
out.println("\t<dependencies>");
// create a list of ModuleRevisionIds indicating the position for each dependency
List<?> dependencies = new ArrayList(report.getModuleRevisionIds());
for (Object o : report.getModuleIds()) {
ModuleId mid = (ModuleId) o;
out.println("\t\t<module organisation=\"" + XMLHelper.escape(mid.getOrganisation()) + "\"" + " name=\""
+ XMLHelper.escape(mid.getName()) + "\">");
for (Object o1 : report.getNodes(mid)) {
IvyNode dep = (IvyNode) o1;
ouputRevision(report, out, dependencies, dep);
}
out.println("\t\t</module>");
}
out.println("\t</dependencies>");
outputEasyAntModuleInfos(easyAntReport, out);
out.println("</easyant-report>");
out.flush();
}