From a29f5ca76074f014d2a82390610797907528efc1 Mon Sep 17 00:00:00 2001 From: ulrich Date: Wed, 21 Apr 2021 06:37:03 +0000 Subject: [PATCH] Unterscheidung und Verarbeitung Geraete-Liste mit allen Angaben (auch Status) oder nur Name --- src/de/uhilger/mediaz/api/StorageHandler.java | 21 +++++++++------------ src/de/uhilger/mediaz/App.java | 1 + src/mediaz_de_DE.properties | 1 + www/ui/data/tpl/form_geraet.txt | 1 + www/ui/js/app.js | 5 +++-- 5 files changed, 15 insertions(+), 14 deletions(-) diff --git a/src/de/uhilger/mediaz/App.java b/src/de/uhilger/mediaz/App.java index 83ceb8e..92f151f 100644 --- a/src/de/uhilger/mediaz/App.java +++ b/src/de/uhilger/mediaz/App.java @@ -56,6 +56,7 @@ public static final String RB_AP_CTX = "appParamCtx"; public static final String RB_AP_UI = "appParamUi"; public static final String RB_EP_LISTE = "epliste"; + public static final String RB_EP_LISTE_ALLES = "eplisteAlles"; public static final String RB_AUDIOEXTS = "audioexts"; public static final String RB_VIDEOEXTS = "videoexts"; public static final String RB_PLAYERPARAMS = "playerparams"; diff --git a/src/de/uhilger/mediaz/api/StorageHandler.java b/src/de/uhilger/mediaz/api/StorageHandler.java index f55e8e0..9d9a4be 100644 --- a/src/de/uhilger/mediaz/api/StorageHandler.java +++ b/src/de/uhilger/mediaz/api/StorageHandler.java @@ -21,6 +21,7 @@ import com.sun.net.httpserver.HttpExchange; import de.uhilger.mediaz.App; import static de.uhilger.mediaz.App.RB_EP_LISTE; +import static de.uhilger.mediaz.App.RB_EP_LISTE_ALLES; import de.uhilger.mediaz.Server; import de.uhilger.mediaz.store.FileStorage; import de.uhilger.mediaz.entity.Entity; @@ -28,16 +29,8 @@ import static de.uhilger.mediaz.store.FileStorage.ST_ABLAGEORT; import static de.uhilger.mediaz.store.FileStorage.ST_GERAET; import de.uhilger.mediaz.store.Storage; -import java.io.BufferedReader; import java.io.IOException; -import java.io.InputStream; -import java.io.InputStreamReader; -import java.net.Authenticator; -import java.net.HttpURLConnection; -import java.net.InetSocketAddress; -import java.net.ProxySelector; import java.net.URI; -import java.net.URL; import java.util.Iterator; import java.util.List; import java.util.logging.Level; @@ -46,7 +39,6 @@ import java.net.http.HttpClient; import java.net.http.HttpClient.Version; import java.net.http.HttpClient.Redirect; -import java.net.http.HttpClient.Builder; import java.net.http.HttpRequest; import java.net.http.HttpResponse; import java.net.http.HttpResponse.BodyHandlers; @@ -56,6 +48,9 @@ /** * HttpHandler fuer die Verwaltung von Entitaeten der Mediazentrale + * + * /mz/api/store/[name]/liste + * /mz/api/store/[name]/listealles (nur Typ Geraet) * * @author Ulrich Hilger * @version 1, 5.4.2021 @@ -107,7 +102,7 @@ FileStorage fs = new FileStorage(App.getInitParameter(App.getRs(App.RB_AP_CONF))); if(path.endsWith(Server.SLASH)) { List list = null; - if(elems[elems.length - 1].equalsIgnoreCase(App.getRs(RB_EP_LISTE))) { + if(elems[elems.length - 1].equalsIgnoreCase(App.getRs(RB_EP_LISTE_ALLES))) { String type = elems[elems.length - 2]; logger.fine(type); if(type.equalsIgnoreCase(ST_GERAET)) { @@ -115,9 +110,11 @@ Gson gson = new Gson(); Object o = gson.fromJson(bodyLesen(e), fs.typeFromName(type).getType()); return gson.toJson(list); - } else { - list = fs.list(type); } + } else if(elems[elems.length - 1].equalsIgnoreCase(App.getRs(RB_EP_LISTE))) { + String type = elems[elems.length - 2]; + logger.fine(type); + list = fs.list(type); if(type.equalsIgnoreCase(ST_ABLAGEORT)) { list.add("Livestreams"); } diff --git a/src/mediaz_de_DE.properties b/src/mediaz_de_DE.properties index 92154cf..fa9aa42 100644 --- a/src/mediaz_de_DE.properties +++ b/src/mediaz_de_DE.properties @@ -20,6 +20,7 @@ strg=/api/strg gstrg=/api/gstrg epliste=liste +eplisteAlles=listealles stopServer=/api/server/stop testAblage=/api/test/ablage testStore=/api/test/store diff --git a/www/ui/data/tpl/form_geraet.txt b/www/ui/data/tpl/form_geraet.txt index 8772037..92dd2a8 100644 --- a/www/ui/data/tpl/form_geraet.txt +++ b/www/ui/data/tpl/form_geraet.txt @@ -4,6 +4,7 @@ <input name="einUrl" class="entity-form-element" type="text" id="geraet-einurl" placeholder="URL (Ein)" value="{{einUrl}}" /> <input name="ausUrl" class="entity-form-element" type="text" id="geraet-ausurl" placeholder="URL (Aus)" value="{{ausUrl}}" /> <input name="statusUrl" class="entity-form-element" type="text" id="geraet-statusurl" placeholder="URL (Status)" value="{{statusUrl}}" /> + <input name="status" class="entity-form-element" type="hidden" id="geraet-status" placeholder="URL (Status)" value="{{status}}" /> <div class="entity-buttons"> <button type="submit" class="button-primary" id="ok-btn">Speichern</button> <button type="button" class="button" id="cancel-btn">Abbrechen</button> diff --git a/www/ui/js/app.js b/www/ui/js/app.js index 3825b66..5051dd6 100644 --- a/www/ui/js/app.js +++ b/www/ui/js/app.js @@ -156,7 +156,7 @@ }; this.geraet_schalt_liste = function() { - self.entitaet_liste('Geräte schalten','../api/store/Geraet/liste/', + self.entitaet_liste('Geräte schalten','../api/store/Geraet/listealles/', "data/tpl/geraet_schalt_liste.txt", '../api/store/Geraet/', "self.form_geraet_status", function(responseText) { var geraet = JSON.parse(responseText); @@ -889,9 +889,10 @@ this.album = a; } -function Geraet(n, e, a, s) { +function Geraet(n, e, a, s, st) { this.name = n; this.einUrl = e; this.ausUrl = a; this.statusUrl = s; + this.status = st; } \ No newline at end of file -- Gitblit v1.9.3