From: <my...@us...> - 2011-04-04 19:18:50
|
Revision: 2481 http://aperture.svn.sourceforge.net/aperture/?rev=2481&view=rev Author: mylka Date: 2011-04-04 19:18:44 +0000 (Mon, 04 Apr 2011) Log Message: ----------- fixed a bug in abstract archiver subcrawler Modified Paths: -------------- aperture/trunk/core/src/main/java/org/semanticdesktop/aperture/subcrawler/base/AbstractArchiverSubCrawler.java Modified: aperture/trunk/core/src/main/java/org/semanticdesktop/aperture/subcrawler/base/AbstractArchiverSubCrawler.java =================================================================== --- aperture/trunk/core/src/main/java/org/semanticdesktop/aperture/subcrawler/base/AbstractArchiverSubCrawler.java 2011-04-04 18:39:03 UTC (rev 2480) +++ aperture/trunk/core/src/main/java/org/semanticdesktop/aperture/subcrawler/base/AbstractArchiverSubCrawler.java 2011-04-04 19:18:44 UTC (rev 2481) @@ -333,8 +333,9 @@ * @param fac * @param archiveEntry */ - private void handleSuperFolders(URI parentUri, + private void handleSuperFolders(URI rootArchiveUri, DataSource dataSource, AccessData accessData, SubCrawlerHandler handler) { + for (String path : folderPaths) { if (knownFolderPaths.contains(path)) { /* @@ -344,19 +345,20 @@ continue; } URI uri = null; - uri = getChildUriFromArchivePath(parentUri, path); + uri = getChildUriFromArchivePath(rootArchiveUri, path); RDFContainerFactory fac = handler.getRDFContainerFactory(uri.toString()); RDFContainer container = fac.getRDFContainer(uri); String fileName = getFileName(path); - path = getSuperfolder(path); - if (path == null) { - uri = parentUri; + String superFolderPath = getSuperfolder(path); + URI superFolderUri = null; + if (superFolderPath == null) { + superFolderUri = rootArchiveUri; } else { - uri = getChildUriFromArchivePath(parentUri, path); + superFolderUri = getChildUriFromArchivePath(rootArchiveUri, superFolderPath); } container.add(RDF.type, NFO.Folder); container.add(RDF.type, NFO.ArchiveItem); - container.add(NIE.isPartOf, uri); + container.add(NIE.isPartOf, superFolderUri); container.add(NFO.fileName, fileName); DataObject object = new FolderDataObjectBase(container.getDescribedUri(), dataSource, container); if (accessData != null && accessData.isKnownId(uri.toString())) { @@ -365,7 +367,7 @@ } else if (accessData != null && !accessData.isKnownId(uri.toString())) { accessData.touch(uri.toString()); accessData.put(uri.toString(), "accessed", "true"); - accessData.putAggregatedID(parentUri.toString(), uri.toString()); + accessData.putAggregatedID(rootArchiveUri.toString(), uri.toString()); handler.objectNew(object); } else { handler.objectNew(object); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |