FileUtils.deleteDirectory(dir);
dir.mkdirs();
Map<ArchivePath, Node> content = super.getArchive().getContent();
for (Entry<ArchivePath, Node> entry : content.entrySet()) {
ArchivePath path = entry.getKey();
Node node = entry.getValue();
String pathName = PathUtil.optionallyRemovePrecedingSlash(path.get());
File target = new File(dir, pathName);
boolean isDirectory = node.getAsset() == null;
InputStream stream = null;
if (!isDirectory) {
stream = node.getAsset().openStream();
target.getParentFile().mkdirs();
OutputStream out = new FileOutputStream(target);
IOUtil.copy(stream, out);
}
else