/*
* Meviz - Various tools collection to work with multimedia.
* Copyright (C) 2012, Svjatoslav Agejenko, svjatoslav@svjatoslav.eu
- *
+ *
* This program is free software; you can redistribute it and/or
* modify it under the terms of version 2 of the GNU General Public License
* as published by the Free Software Foundation.
private final File directoryToIndex;
- private String thumbnailsPath;
-
private File metadataFile;
private DirectoryMetadata metadata;
public FilesystemIndexer(final File directoryToIndex,
final CommandlineHandler commandlineHandler,
- final List<String> pathElements) throws IOException,
- ImageFormatError {
+ final List<String> pathElements) throws Exception {
this.directoryToIndex = directoryToIndex;
this.commandlineHandler = commandlineHandler;
return Utils.isMevizGeneratedIndexFile(indexFile);
}
- public void cleanupUnusedMetadataFiles() {
- final File thumbnailsDirectory = new File(thumbnailsPath);
-
- for (final File file : thumbnailsDirectory.listFiles())
- if (!validMetadataFiles.contains(file.getName()))
- file.delete();
- }
-
public void generateHtmlFromMetadata(final HashSet<Layout> layouts) {
// Generate HTML from metadata
for (final Layout layout : layouts)
.getRelativeThumbnailFileName(desiredDimension);
validMetadataFiles.add(thumbnailFileName);
- final File thumbnailFile = new File(thumbnailsPath + thumbnailFileName);
+ final File thumbnailFile = new File(
+ Utils.getThumbnailsDirectoryPath(directoryToIndex)
+ + thumbnailFileName);
if (!thumbnailFile.exists()) {
desiredDimension.getAwtDimension());
}
return Constants.THUMBNAILS_DIRECTORY_NAME + "/"
- + UrlParamEncoder.encode(thumbnailFileName);
+ + UrlParamEncoder.encode(thumbnailFileName);
}
public void indexForLayout(final Layout layout)
layout.enlistFile(abstractFile);
} else if (abstractFile instanceof Picture)
- layout.enlistImage(abstractFile);
+ layout.enlistImage((Picture) abstractFile);
else if (abstractFile instanceof DirectoryFile)
layout.enlistDirectory(abstractFile);
}
public void loadOrCreateMetadata() {
- metadataFile = new File(thumbnailsPath + Constants.METADATA_FILE_NAME);
+
+ metadataFile = new File(
+ Utils.getThumbnailsDirectoryPath(directoryToIndex)
+ + Constants.METADATA_FILE_NAME);
metadata = MetadadaHelper.initDirectoryMetadata(metadataFile);
}
private void removeUnusedThumbnailFiles() {
- final File thumbnailsDirectory = new File(thumbnailsPath);
-
- for (final File file : thumbnailsDirectory.listFiles())
+ for (final File file : Utils.getThumbnailsDirectory(directoryToIndex)
+ .listFiles())
if (!validMetadataFiles.contains(file.getName()))
file.delete();
}
- public void updateMetadata() throws IOException, ImageFormatError {
-
- final File[] directoryContent = directoryToIndex.listFiles();
+ public void updateMetadata() throws Exception {
- for (final File file : directoryContent)
+ for (final File file : directoryToIndex.listFiles())
if (shallFileBeIndexed(file)) {
metadata.ensureFileMetainfoIsUpToDate(directoryToIndex, file);