File was renamed from src/de/uhilger/fm/Lister.java |
| | |
| | | * @author Ulrich Hilger |
| | | * @version 0.1, 05.11.2024 |
| | | */ |
| | | public class Lister { |
| | | public class Catalog { |
| | | |
| | | public static final String STR_DOT = "."; |
| | | |
| | | /** |
| | | * |
| | | * @param fName Name und relativer Pfad des Ordners, dessen Inhalt aufgelistet werden soll |
| | | * @param ctxPath Kontext Pfad zur Bildung des URL, der auf die Miniaturansicht verweist |
| | | * @param relPathAndName Name und relativer Pfad des Ordners, dessen Inhalt aufgelistet werden soll |
| | | * @param urlBase Kontext Pfad zur Bildung des URL fuer Miniaturansicht und imgsrc bei Bilddateien |
| | | * (koennte evtl. im Client gebildet werden, hier dann nur Mini-Dateiname zurueckgeben) |
| | | * @param base Basisverzeichnis, gegen das der relative Pfad aufgeloest werden soll |
| | | * @return die Dateiliste als JSON String |
| | | * @throws IOException |
| | | */ |
| | | public String liste(String fName, String ctxPath, String base/*, String path*/) throws IOException { |
| | | File[] files = new File(base, fName).listFiles(new ImageFileFilter()); |
| | | public String list(String relPathAndName, String urlBase, String base) throws IOException { |
| | | File[] files = new File(base, relPathAndName).listFiles(new ImageFileFilter()); |
| | | if (files != null && files.length > 0) { |
| | | Arrays.sort(files); |
| | | ArrayList liste = new ArrayList(); |
| | | for (File file : files) { |
| | | Datei datei = new Datei(); |
| | | FileRef datei = new FileRef(); |
| | | String dateiName = file.getName(); |
| | | datei.setName(dateiName); |
| | | if (file.isDirectory()) { |
| | | datei.setTyp(Datei.TYP_ORDNER); |
| | | datei.setTyp(FileRef.TYP_ORDNER); |
| | | } else { |
| | | datei.setTyp(Datei.TYP_DATEI); |
| | | datei.setTyp(FileRef.TYP_DATEI); |
| | | } |
| | | String lowerName = dateiName.toLowerCase(); |
| | | if (lowerName.endsWith(ImageFileFilter.JPEG) |
| | |
| | | datei.setBild(true); |
| | | String ext = dateiName.substring(dateiName.lastIndexOf(STR_DOT)); |
| | | String ohneExt = dateiName.substring(0, dateiName.lastIndexOf(STR_DOT)); |
| | | datei.setMiniurl(ctxPath + /*"/" + */ fName + ohneExt + ImageFileFilter.TN + ext); |
| | | datei.setMiniurl(urlBase + /*"/" + */ relPathAndName + ohneExt + ImageFileFilter.TN + ext); |
| | | //buildImgSrc(file, datei, ohneExt, ext); |
| | | } |
| | | liste.add(datei); |
| | |
| | | //} |
| | | if (!liste.isEmpty()) { |
| | | DirList list = new DirList(); |
| | | list.setPfad(ctxPath + fName); |
| | | list.setDateien(liste); |
| | | list.setDirectory(urlBase + relPathAndName); |
| | | list.setFiles(liste); |
| | | Gson gson = new Gson(); |
| | | String json = gson.toJson(list); |
| | | return json; |