in agent/src/jetbrains/buildServer/xmlReportPlugin/parsers/findBugs/FindBugsPluginVisitor.java [49:88]
private void load(@NotNull File file) {
JarFile jar = null;
try {
jar = new JarFile(file);
final JarEntry messages = jar.getJarEntry("messages.xml");
if (messages == null) {
LOG.warn("Couldn't find messages.xml in plugin " + file);
return;
}
final File tempFile = FileUtil.createTempFile("", "");
InputStream jarFileStream = null;
OutputStream tempFileStream = null;
try {
jarFileStream = jar.getInputStream(messages);
tempFileStream = Files.newOutputStream(tempFile.toPath());
FileUtil.copy(jarFileStream, tempFileStream);
} finally {
FileUtil.close(jarFileStream);
FileUtil.close(tempFileStream);
}
myCallback.pluginFound(tempFile);
FileUtil.delete(tempFile);
} catch (Exception e) {
LOG.warn("Couldn't copy out messages.xml from plugin " + file, e);
} finally {
try {
if (jar != null) {
jar.close();
}
} catch (IOException e) {
LOG.warn("Couldn't close plugin " + file, e);
}
}
}