in uimafit-maven-plugin/src/main/java/org/apache/uima/fit/maven/EnhanceMojo.java [622:654]
private void writeMissingMetaDataReport(File aReportFile, Multimap<String, String> aReportData)
throws MojoExecutionException {
String[] classes = aReportData.keySet().toArray(new String[aReportData.keySet().size()]);
Arrays.sort(classes);
PrintWriter out = null;
FileUtils.mkdir(aReportFile.getParent());
try {
out = new PrintWriter(new OutputStreamWriter(new FileOutputStream(aReportFile), encoding));
if (classes.length > 0) {
for (String clazz : classes) {
out.printf("%s %s%n", MARK_CLASS, clazz);
Collection<String> messages = aReportData.get(clazz);
if (messages.isEmpty()) {
out.printf(" No problems");
} else {
for (String message : messages) {
out.printf(" %s%n", message);
}
}
out.printf("%n");
}
} else {
out.printf("%s%n", MARK_NO_MISSING_META_DATA);
}
} catch (IOException e) {
throw new MojoExecutionException("Unable to write missing meta data report to [" + aReportFile
+ "]" + ExceptionUtils.getRootCauseMessage(e), e);
} finally {
IOUtils.closeQuietly(out);
}
}