package eu.svjatoslav.meviz.htmlindexer;
-import java.io.File;
-import java.io.UnsupportedEncodingException;
-
import eu.svjatoslav.meviz.htmlindexer.metadata.Dimension;
import eu.svjatoslav.meviz.htmlindexer.metadata.DirectoryMetadata;
import eu.svjatoslav.meviz.htmlindexer.metadata.fileTypes.AbstractFile;
import eu.svjatoslav.meviz.htmlindexer.metadata.fileTypes.GeneralFile;
import eu.svjatoslav.meviz.htmlindexer.metadata.fileTypes.Picture;
+import java.io.File;
+import java.io.UnsupportedEncodingException;
+
public abstract class AbstractIndexer {
- public static boolean isImage(final String fileExtension) {
- for (final String ext : Constants.SUPPORTED_IMAGE_EXTENSIONS)
- if (ext.equals(fileExtension))
- return true;
- return false;
- }
+ public static boolean isImage(final String fileExtension) {
+ for (final String ext : Constants.SUPPORTED_IMAGE_EXTENSIONS)
+ if (ext.equals(fileExtension))
+ return true;
+ return false;
+ }
- public static boolean isOgv(final String fileExtension) {
- return fileExtension.equalsIgnoreCase("ogv");
- }
+ public static boolean isOgv(final String fileExtension) {
+ return fileExtension.equalsIgnoreCase("ogv");
+ }
- public static boolean shallFileBeIndexed(final File file) {
+ static boolean shallFileBeIndexed(final File file) {
- if (file.getName().startsWith("."))
- return false;
- if (file.getName().startsWith("index"))
- if (file.getName().endsWith(".html"))
- return false;
+ if (file.getName().startsWith("."))
+ return false;
+ if (file.getName().startsWith("index"))
+ if (file.getName().endsWith(".html"))
+ return false;
- return true;
- }
+ return true;
+ }
- public void compileHtml(final Layout layout,
- final DirectoryMetadata directory)
- throws UnsupportedEncodingException {
+ void compileHtml(final Layout layout,
+ final DirectoryMetadata directory)
+ throws UnsupportedEncodingException {
- for (final AbstractFile file : directory.getFiles())
- if (file instanceof GeneralFile) {
- final String fileExtension = file.getFileExtension();
+ for (final AbstractFile file : directory.getFiles())
+ if (file instanceof GeneralFile) {
+ final String fileExtension = file.getFileExtension();
- if ("ogv".equals(fileExtension))
- layout.enlistOgv(file);
- else
- layout.enlistFile(file);
+ if ("ogv".equals(fileExtension))
+ layout.enlistOgv(file, directory);
+ else if ("webm".equals(fileExtension))
+ layout.enlistWebm(file, directory);
+ else
+ layout.enlistFile(file, directory);
- } else if (file instanceof Picture)
- layout.enlistImage((Picture) file);
- else if (file instanceof DirectoryFile)
- layout.enlistDirectory(file);
+ } else if (file instanceof Picture)
+ layout.enlistImage((Picture) file, directory);
+ else if (file instanceof DirectoryFile)
+ layout.enlistDirectory(file, directory);
- }
+ }
- public abstract String getDirectoryUrl(final AbstractFile directory,
- IndexingContext context);
+ public abstract String getDirectoryUrl(final AbstractFile directory,
+ IndexingContext context);
- public abstract String getParentDirectoryUrl(IndexingContext context);
+ public abstract String getParentDirectoryUrl(IndexingContext context);
- public abstract String getThumbnailUrl(Picture picture,
- final Dimension desiredDimension, IndexingContext context);
+ public abstract String getThumbnailUrl(Picture picture,
+ final Dimension desiredDimension, IndexingContext context);
}