From 03b95f100b605458e5bf2995e955882d9aa51868 Mon Sep 17 00:00:00 2001 From: undisclosed Date: Mon, 23 Jan 2023 13:28:17 +0000 Subject: [PATCH] URL in m3u berichtigt --- src/de/uhilger/tango/api/MediaSteuerung.java | 19 --------- src/de/uhilger/tango/api/ListHandler.java | 24 ++++++------ src/de/uhilger/tango/api/AbstractHandler.java | 19 +++++++++ src/de/uhilger/tango/Server.java | 1 4 files changed, 33 insertions(+), 30 deletions(-) diff --git a/src/de/uhilger/tango/Server.java b/src/de/uhilger/tango/Server.java index d5d445a..e29c01f 100644 --- a/src/de/uhilger/tango/Server.java +++ b/src/de/uhilger/tango/Server.java @@ -62,6 +62,7 @@ //public static final String RB_ABLAGE_TEST = "testAblage"; //public static final String RB_STORE_TEST = "testStore"; public static final String SLASH = "/"; + public static final String NEWLINE = "\n"; private int port; diff --git a/src/de/uhilger/tango/api/AbstractHandler.java b/src/de/uhilger/tango/api/AbstractHandler.java index ec47802..d767353 100644 --- a/src/de/uhilger/tango/api/AbstractHandler.java +++ b/src/de/uhilger/tango/api/AbstractHandler.java @@ -21,6 +21,9 @@ import com.sun.net.httpserver.HttpExchange; import com.sun.net.httpserver.HttpHandler; import de.uhilger.tango.App; +import de.uhilger.tango.entity.Einstellung; +import de.uhilger.tango.entity.Entity; +import de.uhilger.tango.store.Storage; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; @@ -155,4 +158,20 @@ return rb.getString(key); } + protected String getEinstellung(Storage s, String key, String standardWert) { + Entity entity = s.read(Einstellung.class.getSimpleName(), key); + if (entity instanceof Einstellung) { + Einstellung einstellung = (Einstellung) entity; + Object o = einstellung.getValue(); + if(o instanceof String) { + return o.toString(); + } else { + return standardWert; + } + } else { + return standardWert; + } + } + + } diff --git a/src/de/uhilger/tango/api/ListHandler.java b/src/de/uhilger/tango/api/ListHandler.java index c3ab471..490fd4c 100644 --- a/src/de/uhilger/tango/api/ListHandler.java +++ b/src/de/uhilger/tango/api/ListHandler.java @@ -25,7 +25,6 @@ import de.uhilger.tango.entity.Entity; import de.uhilger.tango.entity.Titel; import de.uhilger.tango.store.FileStorage; -import java.io.File; import java.io.IOException; import java.util.List; import java.util.logging.Logger; @@ -33,16 +32,16 @@ /** * Der ListHandler bearbeitet HTTP-Anfragen zu Abspiellisten * - * GET /mz/api/alist/[pl-name] die Titel-Objekte der Liste [pl-name] liefern - * GET /mz/api/alist/[pl-name]/m3u eine einfache Playlist im M3U-Format ausgeben - * GET /mz/api/alist/[pl-name]/[nr] den Titel mit der Nummer [nr] abrufen + * GET /tango/api/alist/[pl-name] die Titel-Objekte der Liste [pl-name] liefern + * GET /tango/api/alist/[pl-name]/m3u eine einfache Playlist im M3U-Format ausgeben + * GET /tango/api/alist/[pl-name]/[nr] den Titel mit der Nummer [nr] abrufen * - * PUT /mz/api/alist/[pl-name] den Titel im Body anfuegen an die Liste [pl-name] - * PUT /mz/api/alist/[pl-name]/[nr] an der Position nr der Liste [pl-name] den Titel im Body einfuegen - * PUT /mz/api/alist/[pl-name]/[nrVon]/[nrNach] den Titel von seiner aktuellen Position an eine + * PUT /tango/api/alist/[pl-name] den Titel im Body anfuegen an die Liste [pl-name] + * PUT /tango/api/alist/[pl-name]/[nr] an der Position nr der Liste [pl-name] den Titel im Body einfuegen + * PUT /tango/api/alist/[pl-name]/[nrVon]/[nrNach] den Titel von seiner aktuellen Position an eine * andere Position der Liste [pl-name] verschieben - * DELETE /mz/api/alist/[pl-name]/[nr] den Titel an der Position [nr] aus der Liste [pl-name] entfernen - * DELETE /mz/api/alist/[pl-name]/alle alle Titel aus der Liste [pl-name] entfernen + * DELETE /tango/api/alist/[pl-name]/[nr] den Titel an der Position [nr] aus der Liste [pl-name] entfernen + * DELETE /tango/api/alist/[pl-name]/alle alle Titel aus der Liste [pl-name] entfernen * * TODO (2.1.2023): * - Liste ab Titel spielen @@ -97,12 +96,13 @@ List<Titel> titelListe = liste.getTitel(); for(Titel titel : titelListe) { - - sb.append("http://hsrv:9090/tango"); + String server = getEinstellung(fs, + getResString(MediaSteuerung.RB_HOST), MediaSteuerung.DEFAULT_HOST); + sb.append(server); sb.append(titel.getKatalogUrl()); sb.append(titel.getPfad()); sb.append(titel.getName()); - sb.append("\n"); + sb.append(Server.NEWLINE); } } return sb.toString(); diff --git a/src/de/uhilger/tango/api/MediaSteuerung.java b/src/de/uhilger/tango/api/MediaSteuerung.java index 7c0c3bd..b499372 100644 --- a/src/de/uhilger/tango/api/MediaSteuerung.java +++ b/src/de/uhilger/tango/api/MediaSteuerung.java @@ -19,12 +19,10 @@ import com.google.gson.Gson; import com.sun.net.httpserver.HttpExchange; -import de.uhilger.tango.App; import de.uhilger.tango.Server; import de.uhilger.tango.entity.Abspielvorgang; import de.uhilger.tango.entity.Abspieler; import de.uhilger.tango.entity.Abspielliste; -import de.uhilger.tango.entity.Einstellung; import de.uhilger.tango.entity.Entity; import de.uhilger.tango.entity.Livestream; import de.uhilger.tango.entity.Titel; @@ -362,22 +360,7 @@ return kmd; } - - private String getEinstellung(Storage s, String key, String standardWert) { - Entity entity = s.read(Einstellung.class.getSimpleName(), key); - if (entity instanceof Einstellung) { - Einstellung einstellung = (Einstellung) entity; - Object o = einstellung.getValue(); - if(o instanceof String) { - return o.toString(); - } else { - return standardWert; - } - } else { - return standardWert; - } - } - + private void abspielerKommandoSenden(String kommando) { /* TODO hier evtl. mit mehreren Versuchen ausgleichen, -- Gitblit v1.9.3