public GeronimoArchiver(ArchiverManager archiverManager) {
this.archiverManager = archiverManager;
}
public void addArchivedFileSet(File archiveFile) throws ArchiverException {
UnArchiver unArchiver;
try {
unArchiver = archiverManager.getUnArchiver(archiveFile);
} catch (NoSuchArchiverException e) {
throw new ArchiverException(
"Error adding archived file-set. UnArchiver not found for: " + archiveFile,
e);
}
File tempDir = FileUtils.createTempFile("archived-file-set.", ".tmp", null);
tempDir.mkdirs();
tmpDirs.add(tempDir);
unArchiver.setSourceFile(archiveFile);
unArchiver.setDestDirectory(tempDir);
try {
unArchiver.extract();
} catch (IOException e) {
throw new ArchiverException("Error adding archived file-set. Failed to extract: "
+ archiveFile, e);
}