/* Prepare a map of all paths to ISO objects and create all intermediate objects */
directories.put("", root);
for (ResourceIterator i = getResources(); i.hasNext();) {
ArchiveEntry entry = i.next();
switch (entry.getType()) {
case ArchiveEntry.DIRECTORY: {
ISO9660Directory dir;
dir = new ISO9660Directory(getName(entry));
directories.put(getPath(entry), dir);
String path = getPath(entry);
while ((path = getParentPath(path)) != "") {
dir = new ISO9660Directory(getName(path));
directories.put(path, dir);
}
break;
}
case ArchiveEntry.FILE: {
ISO9660File file;
ISO9660Directory dir;
/* Create the file */
file = new ISO9660File(
new ArchiveEntryDataReference(entry),
getName(entry), entry.getResource()
.getLastModified());
files.put(getPath(entry), file);
String path = getPath(entry);