From 081606e391a352d8117210d731d252dfb43c4b84 Mon Sep 17 00:00:00 2001
From: ulrich
Date: Mon, 05 Apr 2021 10:00:45 +0000
Subject: [PATCH] FileStorage und Interface Storage

---
 src/de/uhilger/mediaz/api/StorageHandler.java |   19 ++++++++++++++-----
 1 files changed, 14 insertions(+), 5 deletions(-)

diff --git a/src/de/uhilger/mediaz/api/StoreHandler.java b/src/de/uhilger/mediaz/api/StorageHandler.java
similarity index 83%
rename from src/de/uhilger/mediaz/api/StoreHandler.java
rename to src/de/uhilger/mediaz/api/StorageHandler.java
index 4e317bb..12c4417 100644
--- a/src/de/uhilger/mediaz/api/StoreHandler.java
+++ b/src/de/uhilger/mediaz/api/StorageHandler.java
@@ -10,22 +10,24 @@
 import com.sun.net.httpserver.HttpHandler;
 import de.uhilger.mediaz.App;
 import de.uhilger.mediaz.Server;
-import de.uhilger.mediaz.conf.Store;
+import de.uhilger.mediaz.store.FileStorage;
 import de.uhilger.mediaz.entity.Ablageort;
 import java.io.BufferedReader;
+import java.io.File;
 import java.io.IOException;
 import java.io.InputStream;
 import java.io.InputStreamReader;
 import java.io.OutputStream;
+import java.util.logging.Level;
 import java.util.logging.Logger;
 
 /**
  *
  * @author ulrich
  */
-public class StoreHandler extends Store implements HttpHandler  {
+public class StorageHandler implements HttpHandler  {
   
-  private static final Logger logger = Logger.getLogger(StoreHandler.class.getName());
+  private static final Logger logger = Logger.getLogger(StorageHandler.class.getName());
 
   
   /*
@@ -41,11 +43,11 @@
     liest den Ablageort namens "Katalog"
   
     HTTP POST an /mz/api/store/Ablageort
-    schreibt den neuen Ablageort im Body der Anfrage
+    schreibt den neuen Ablageort im Body der Anfrage (Neu)
   
     HTTP PUT an /mz/api/store/Ablageort
     sucht den Ablageort mit dem Namen laut Body der Anfrage 
-    und schreibt den Inhalt aus der Anfrage in die Datei
+    und schreibt den Inhalt aus der Anfrage in die Datei (Aenderung)
   
     HTTP DELETE an /mz/api/store/Ablageort/Katalog
     löscht den Ablageort namens "Katalog"
@@ -64,11 +66,13 @@
     String[] elems = path.split(App.getRs(Server.RB_SLASH));
     String type = "";
     String elemName = "";
+    FileStorage fs = new FileStorage(App.getInitParameter(App.getRs(App.RB_AP_CONF)));
     switch(method) {
       case HTTP_GET:
         type = elems[elems.length - 2];
         elemName = elems[elems.length - 1];
         //this.readFromFile(file);
+        fs.read(type, elemName);
         break;
         
       case HTTP_PUT:
@@ -83,6 +87,11 @@
           Gson gson = new Gson();
           Ablageort ort = gson.fromJson(elemName, Ablageort.class);
           elemName = ort.getName();
+          Object o = fs.write(ort);
+          if(o instanceof File) {
+            File file = (File) o;
+            logger.log(Level.INFO, "Datei {0} geschrieben.", file.getAbsolutePath());
+          }
         }
         break;
         

--
Gitblit v1.9.3