X-Git-Url: http://www2.svjatoslav.eu/gitweb/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Feu%2Fsvjatoslav%2Fmeviz%2Fhtmlindexer%2FLayout.java;h=4a21863d0c66b8ba2c2471c42ecf8bdf18bdfda7;hb=dfbc4d8ef09f9aa2deb4597184523dd316fa8071;hp=88de6cea09d689295a3c20d0df6cbc2e84b3a02e;hpb=f826af1cdb62425a975cd174ecd0905100d3a2dc;p=meviz.git diff --git a/src/main/java/eu/svjatoslav/meviz/htmlindexer/Layout.java b/src/main/java/eu/svjatoslav/meviz/htmlindexer/Layout.java index 88de6ce..4a21863 100755 --- a/src/main/java/eu/svjatoslav/meviz/htmlindexer/Layout.java +++ b/src/main/java/eu/svjatoslav/meviz/htmlindexer/Layout.java @@ -1,7 +1,7 @@ /* * 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. @@ -9,15 +9,18 @@ package eu.svjatoslav.meviz.htmlindexer; +import java.io.IOException; import java.io.UnsupportedEncodingException; import java.util.List; +import eu.svjatoslav.meviz.htmlindexer.metadata.DirectoryMetadata; import eu.svjatoslav.meviz.htmlindexer.metadata.fileTypes.AbstractFile; +import eu.svjatoslav.meviz.htmlindexer.metadata.fileTypes.Picture; /** * In order to have possibility of several different layouts per directory. * Universal interface is defined. - * + * * Layout implementation is responsible for actual HTML generation. */ @@ -26,24 +29,28 @@ public interface Layout { /** * Enlist directory. */ - public void enlistDirectory(AbstractFile directory); + public void enlistDirectory(AbstractFile directory, + DirectoryMetadata parentDirectoryMetadata); /** * Enlist simple file. */ - public void enlistFile(AbstractFile file); + public void enlistFile(AbstractFile file, + DirectoryMetadata parentDirectoryMetadata); /** * Enlist image file. */ - public void enlistImage(AbstractFile picture); + public void enlistImage(Picture picture, + DirectoryMetadata parentDirectoryMetadata); /** * Enlist video in OGV format. - * + * * @throws UnsupportedEncodingException */ - public void enlistOgv(AbstractFile file) + public void enlistOgv(AbstractFile file, + DirectoryMetadata parentDirectoryMetadata) throws UnsupportedEncodingException; /** @@ -56,12 +63,19 @@ public interface Layout { /** * After necessary files have been enlisted for particular directory, use * this method to retrieve generated HTML result. + * + * @param metadata + * @throws IOException */ - public String getHtml(); + public String getHtml(final boolean showTitle, + final boolean doHtmlHeaderAndFooter, DirectoryMetadata metadata) + throws IOException; /** * Initialize layout for particular directory. */ public void init(String galleryTitle, List path, final AbstractIndexer indexer, IndexingContext context); + + public void enlistWebm(AbstractFile file, DirectoryMetadata directory); }