private void processEntry(SevenZArchiveEntry entry, ArchiveInputStream archiveStream, URI uri, String newPath) throws CommandExecutionException {
String name = entry.getName();
if (!entry.isDirectory()) {
final RequestMetaData metaData = new RequestMetaData(entry.getSize(), 2L, name);
final RequestIdentifier identifier = new RequestIdentifier(uri);
SevenZipEntryIdentificationRequest req = new SevenZipEntryIdentificationRequest(metaData, identifier, getTmpDir());
BoundedInputStream entryStream = new BoundedInputStream(archiveStream, entry.getSize());
entryStream.setPropagateClose(false);
expandContainer(req, entryStream, newPath);
} else {
log.debug("processing directory : " + entry.getName());
}
}