/** * Klassen fuer das Dateimanagement mit java.nio.file. * * Die folgenden Funktionen sind enthalten: * *
 * Ordnerinhalt auflisten:    
 *    Catalog().list(relPathAndName, miniUrlBase, baseDir)
 * 
 * Datei speichern:
 *    Writer().speichern(file, content)
 * 
 * Dateien und Ordner loeschen:
 *    Eraser().deleteFiles(relPfad, dateiname, basis)
 * 
 * Kopieren von Dateien und Ordnern:
 *    Mover().copyOrMoveFiles(quelle, ziel, dateiNamen, op, base)
 * 
 * Verschieben von Dateien und Ordnern:
 *    Mover().copyOrMoveFiles(quelle, ziel, dateiNamen, op, base)
 * 
 * Duplizieren einer Datei:
 *    Duplicator().duplizieren(base, fileName)
 * 
 * Umbenennen einer Datei oder eines Ordners:
 *    Renamer().umbenennen(exchange, fileName, params[1], file)
 * 
 * Packen eines Ordners:
 *    Deflator().packFolder(fileName, path, base)
 * 
 * Entpacken einer ZIP-Datei:
 *    Inflator().extractZipfile(fileName, path, base)
 * 
* *

Die folgenden Funktionalitaeten sind in dieser Auspraegung einer * Dateiverwaltung fest angelegt. Sie sind damit Kandidaten fuer eine * Erweiterung dieser Klassenbibliothek um andere evtl. benoetigte * Auspraegungen.

* *

Handhabung von Bilddateien

* * Neben der Datei eines Bildes in Originalgroesse werden weitere Dateien als Varianten * eines Bildes unterstuetzt. * * In Dateilisten werden diese Varianten ausgeblendet und nur das Originalbild gezeigt. * * Die Dateinamen von Varianten eines Bildes muessen dazu einen mit Unterstrich beginnenden * Namenszusatz enthalten wie bspw. _tn fuer thumbnail oder _sm * fuer small usw. Gleichsam lassen sich damit Eigenschaften wie zum Beispiel * eine Base64-Kodierung kombinieren. Hier waere der Namenszusatz dann eine Kombination * aus Groesse und Kodierung wie mit _sm_b64, so dass sich fuer ein Bild stets * eine ganze Gruppe von Dateien ergibt, z.B.: * *
 * bild.jpg
 * bild_sm.jpg
 * bild_sm_b64.jpg
 * 
* * Alle Dateioperationen dieser Klassenbibliothek wirken dennoch stets auf * alle Varianten des Bildes, wie es auf der Kommandozeile mit einem Wildcard-Operator * gemacht wuerde, z.B. * *
 *   cp /pfad/zum/bild*.jpg /pfad/zum/zielordner
 * 
* * Eine Dateiliste enthaelt aus diesem Grund fuer Bilddateien die beiden zusaetzlichen Angaben * miniurl und imgsrc. * *

Ordnerliste im JSON-Format

* * Die Liste mit Dateien eines Ordners wird im JSON-Format ausgegeben. Ueber eine * entsprechende Erweiterung koennte die Ausgabe in verschiedenen waehlbaren Formaten * erfolgen. * */ package de.uhilger.fm;