Persoenliche Mediazentrale
ulrich
2021-04-09 c7030d001eafe77660cd18d59b63bf0be9441f10
src/de/uhilger/mediaz/api/StorageHandler.java
@@ -19,18 +19,13 @@
import com.google.gson.Gson;
import com.sun.net.httpserver.HttpExchange;
import com.sun.net.httpserver.HttpHandler;
import de.uhilger.mediaz.App;
import static de.uhilger.mediaz.App.RB_EP_LISTE;
import de.uhilger.mediaz.Server;
import static de.uhilger.mediaz.Server.RB_SLASH;
import de.uhilger.mediaz.store.FileStorage;
import de.uhilger.mediaz.entity.Entity;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.util.List;
import java.util.logging.Level;
import java.util.logging.Logger;
@@ -41,7 +36,7 @@
 * @author Ulrich Hilger
 * @version 1, 5.4.2021
 */
public class StorageHandler extends AbstractHandler implements HttpHandler {
public class StorageHandler extends AbstractHandler {
  
  private static final Logger logger = Logger.getLogger(StorageHandler.class.getName());
@@ -78,19 +73,20 @@
  */
  
  /** Name der HTTP Methode GET */
  public static final String HTTP_GET = "GET";
  //public static final String HTTP_GET = "GET";
  
  /** Name der HTTP Methode PUT */
  public static final String HTTP_PUT = "PUT";
  //public static final String HTTP_PUT = "PUT";
  
  /** Name der HTTP Methode POST */
  public static final String HTTP_POST = "POST";
  //public static final String HTTP_POST = "POST";
  
  /** Name der HTTP Methode DELETE */
  public static final String HTTP_DELETE = "DELETE";
  //public static final String HTTP_DELETE = "DELETE";
  
  public static final String EP_LISTE = "liste/";
  //public static final String EP_LISTE = "liste/";
  /*
  @Override
  public void handle(HttpExchange e) throws IOException {
    String method = e.getRequestMethod();
@@ -131,8 +127,10 @@
    os.write(response.getBytes());
    os.close();        
  }
  */
  
  private String put(HttpExchange e) throws IOException {
  @Override
  protected String put(HttpExchange e) throws IOException {
    String path = e.getRequestURI().toString();
    String[] elems = path.split(App.getRs(Server.RB_SLASH));
    String type = elems[elems.length - 2];
@@ -158,6 +156,7 @@
      return "Ungueltiger Elementname: " + App.getRs(RB_EP_LISTE);
    }
  }
  private boolean loeschen(HttpExchange e) {
    String path = e.getRequestURI().toString();
    String[] elems = path.split(App.getRs(Server.RB_SLASH));
@@ -190,18 +189,18 @@
    }
  }
  
  private String bodyLesen(HttpExchange e) throws IOException {
    InputStream is = e.getRequestBody();
    BufferedReader r = new BufferedReader(new InputStreamReader(is));
    StringBuilder sb = new StringBuilder();
    String line = r.readLine();
    while(line != null) {
      sb.append(line);
      line = r.readLine();
    }
    r.close();
    String json = sb.toString();
    logger.log(Level.FINE, "json: {0}", json);
    return json;
  @Override
  public String get(HttpExchange e) {
    return lesen(e);
  }
  @Override
  public String post(HttpExchange e) {
    return "nicht unterstuetzt";
  }
  @Override
  public boolean delete(HttpExchange e) {
    return loeschen(e);
  }
}