From 9e14efd567cd31ccec8f7e7875906c1249391cfa Mon Sep 17 00:00:00 2001 From: ulrich Date: Sun, 11 Apr 2021 12:21:59 +0000 Subject: [PATCH] Start, Stopp, Pause --- src/de/uhilger/mediaz/api/ListFileHandler.java | 20 +++++++++++++++++++- 1 files changed, 19 insertions(+), 1 deletions(-) diff --git a/src/de/uhilger/mediaz/api/ListFileHandler.java b/src/de/uhilger/mediaz/api/ListFileHandler.java index 4c31548..0b780aa 100644 --- a/src/de/uhilger/mediaz/api/ListFileHandler.java +++ b/src/de/uhilger/mediaz/api/ListFileHandler.java @@ -17,6 +17,7 @@ */ package de.uhilger.mediaz.api; +import com.sun.net.httpserver.Headers; import com.sun.net.httpserver.HttpExchange; import de.uhilger.mediaz.App; import de.uhilger.mediaz.Server; @@ -27,11 +28,15 @@ import de.uhilger.mediaz.store.StorageFile; import de.uhilger.mediaz.store.Track; import java.io.File; +import java.io.FileFilter; import java.io.IOException; import java.io.OutputStream; import java.util.ArrayList; +import java.util.Arrays; +import java.util.Collections; import java.util.HashMap; import java.util.Map; +import java.util.Set; import java.util.logging.Level; import java.util.logging.Logger; @@ -78,7 +83,17 @@ logger.fine(fName); File dir = new File(fileBase, fName); logger.fine(dir.getAbsolutePath()); - File[] files = dir.listFiles(); + File[] files = dir.listFiles(new FileFilter() { + @Override + public boolean accept(File pathname) { + Set keys = extMap.keySet(); + String fname = pathname.getName(); + int pos = fname.lastIndexOf("."); + String ext = fname.substring(pos+1); + return keys.contains(ext) || pathname.isDirectory(); + } + }); + Arrays.sort(files); ArrayList list = new ArrayList(); if(files != null) { for(File file : files) { @@ -103,8 +118,11 @@ list.add(sf); } } + //Collections.sort(list); String json = jsonWithCustomType(list, "Medialiste"); logger.fine(json); + Headers headers = e.getResponseHeaders(); + headers.add("Content-Type", "application/json"); e.sendResponseHeaders(200, json.length()); OutputStream os = e.getResponseBody(); os.write(json.getBytes()); -- Gitblit v1.9.3