/*
* 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.
import java.io.File;
import java.io.FileNotFoundException;
import java.io.IOException;
-import java.io.UnsupportedEncodingException;
import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import eu.svjatoslav.meviz.htmlindexer.metadata.DirectoryMetadata;
import eu.svjatoslav.meviz.htmlindexer.metadata.MetadadaHelper;
import eu.svjatoslav.meviz.htmlindexer.metadata.fileTypes.AbstractFile;
-import eu.svjatoslav.meviz.htmlindexer.metadata.fileTypes.DirectoryFile;
-import eu.svjatoslav.meviz.htmlindexer.metadata.fileTypes.GeneralFile;
import eu.svjatoslav.meviz.htmlindexer.metadata.fileTypes.Picture;
/**
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;
if (canWriteIndexFile(indexFile)) {
- indexForLayout(layout);
+ compileHtml(layout, metadata);
IOHelper.overwriteFileIfContentDiffers(indexFile, layout
- .getHtml(true, true).getBytes());
+ .getHtml(true, true, metadata).getBytes());
}
} catch (final Exception e) {
logger.error("Error writing index file. ", e);
+ UrlParamEncoder.encode(thumbnailFileName);
}
- public void indexForLayout(final Layout layout)
- throws UnsupportedEncodingException {
-
- for (final AbstractFile abstractFile : metadata.getFiles())
- if (abstractFile instanceof GeneralFile) {
-
- if (isOgv(abstractFile.getFileExtension()))
- layout.enlistOgv(abstractFile);
- else
- layout.enlistFile(abstractFile);
-
- } else if (abstractFile instanceof Picture)
- layout.enlistImage(abstractFile);
- else if (abstractFile instanceof DirectoryFile)
- layout.enlistDirectory(abstractFile);
-
- }
-
public void initializeLayouts() {
layouts = Utils.getLayouts();
}
- 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);