X-Git-Url: http://www2.svjatoslav.eu/gitweb/?p=meviz.git;a=blobdiff_plain;f=src%2Fmain%2Fjava%2Feu%2Fsvjatoslav%2Fmeviz%2Fhtmlindexer%2FLayout.java;h=25bfd4fb5a8575b84fa410ec42bbf54822075134;hp=2dac2ffaf045187f620d44bcb8777ac6249949ac;hb=cf6e4ace4972f24f40f88ea12fcf99c763e4e40a;hpb=2456c6f80f725ffbf6278f4834d131f73cd295f7 diff --git a/src/main/java/eu/svjatoslav/meviz/htmlindexer/Layout.java b/src/main/java/eu/svjatoslav/meviz/htmlindexer/Layout.java index 2dac2ff..25bfd4f 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 - * + * Copyright (C) 2012 -- 2018, 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,58 +9,72 @@ package eu.svjatoslav.meviz.htmlindexer; -import java.io.UnsupportedEncodingException; - +import eu.svjatoslav.meviz.htmlindexer.metadata.DirectoryMetadata; import eu.svjatoslav.meviz.htmlindexer.metadata.fileTypes.AbstractFile; +import eu.svjatoslav.meviz.htmlindexer.metadata.fileTypes.Picture; + +import java.io.IOException; +import java.io.UnsupportedEncodingException; +import java.util.List; /** * In order to have possibility of several different layouts per directory. * Universal interface is defined. - * + *

* Layout implementation is responsible for actual HTML generation. */ public interface Layout { - /** - * Enlist directory. - */ - public void enlistDirectory(AbstractFile directory); + /** + * Enlist directory. + */ + void enlistDirectory(AbstractFile directory, + DirectoryMetadata parentDirectoryMetadata); + + /** + * Enlist simple file. + */ + void enlistFile(AbstractFile file, + DirectoryMetadata parentDirectoryMetadata); - /** - * Enlist simple file. - */ - public void enlistFile(AbstractFile file); + /** + * Enlist image file. + */ + void enlistImage(Picture picture, + DirectoryMetadata parentDirectoryMetadata); - /** - * Enlist image file. - */ - public void enlistImage(AbstractFile picture); + /** + * Enlist video in OGV format. + * + * @throws UnsupportedEncodingException + */ + void enlistOgv(AbstractFile file, + DirectoryMetadata parentDirectoryMetadata) + ; - /** - * Enlist video in OGV format. - * - * @throws UnsupportedEncodingException - */ - public void enlistOgv(AbstractFile file) - throws UnsupportedEncodingException; + /** + * Return layout specific suffix that will be appended between + * index(suffix).html of generated file. This way multiple layouts can + * coexist in the same directory, each residing in its own HTML file. + */ + String getFileNameSuffix(); - /** - * Return layout specific suffix that will be appended between - * index(suffix).html of generated file. This way multiple layouts can - * coexist in the same directory, each residing in its own HTML file. - */ - public String getFileNameSuffix(); + /** + * After necessary files have been enlisted for particular directory, use + * this method to retrieve generated HTML result. + * + * @throws IOException + */ + String getHtml(final boolean showTitle, + final boolean doHtmlHeaderAndFooter, DirectoryMetadata metadata) + ; - /** - * After necessary files have been enlisted for particular directory, use - * this method to retrieve generated HTML result. - */ - public String getHtml(); + /** + * Initialize layout for particular directory. + */ + void init(String galleryTitle, List path, + final AbstractIndexer indexer, IndexingContext context); - /** - * Initialize layout for particular directory. - */ - public void init(String galleryTitle, String[] path, - final AbstractIndexer indexer, final String pathPrefix); + void enlistWebm(AbstractFile file, DirectoryMetadata directory); }