From dfb7d34f88efbb3eb7632ae628ccfd4576824477 Mon Sep 17 00:00:00 2001
From: ulrich
Date: Thu, 08 Apr 2021 10:37:10 +0000
Subject: [PATCH] REST-Konformitaet des StorageHandler verbessert
---
src/de/uhilger/mediaz/store/Storage.java | 34 +++++++++++++++++++++++++++++++++-
1 files changed, 33 insertions(+), 1 deletions(-)
diff --git a/src/de/uhilger/mediaz/store/Storage.java b/src/de/uhilger/mediaz/store/Storage.java
index 66f7255..3f63bc8 100644
--- a/src/de/uhilger/mediaz/store/Storage.java
+++ b/src/de/uhilger/mediaz/store/Storage.java
@@ -17,6 +17,7 @@
*/
package de.uhilger.mediaz.store;
+import com.google.gson.reflect.TypeToken;
import de.uhilger.mediaz.entity.Entity;
import java.util.List;
@@ -55,7 +56,7 @@
* @param e das Objekt, das geschrieben werden soll
* @return ein Antwortobjekt oder null
*/
- public Object write(Entity e);
+ public Object write(Entity e, boolean overwrite);
/**
* Ein Objekt aus der Ablage lesen
@@ -66,10 +67,41 @@
public Entity read(String typ, String name);
/**
+ * Ein Objekt als JSON lesen
+ * @param typ
+ * @param name
+ * @return das gewuenschte Objekt als JSON
+ */
+ public String readJson(String typ, String name);
+
+ /**
* Die Namen der Elemente eines gegebenen Typs auflisten
* @param typ der gewuenschte Typ
* @return die Liste mit Namen
*/
public List<String> list(String typ);
+ /**
+ * Alle Objekte eines Typs auflisten
+ * @param typ der gewuenschte Typ
+ * @return die Liste mit Objekten
+ */
+ public List listObjects(String typ);
+
+ /**
+ * Fuer einen gegebenen Namen den Typ bestimmen
+ * @param name der Name des gewuenschten Typs
+ * @return der Typ zum Namen
+ */
+ public TypeToken typeFromName(String name);
+
+ /**
+ * Ein Objekt aus der Ablage loeschen
+ * @param typ Objekttyp
+ * @param name Name des Objekts, das geloscht werden soll
+ * @return true, wenn geloeschn, false wenn nicht
+ */
+ public boolean delete(String typ, String name);
+
+ public boolean exists(String typ, String name);
}
--
Gitblit v1.9.3