| | |
| | | import java.util.logging.Logger; |
| | | |
| | | /** |
| | | * |
| | | * Die Klasse FileEraser liefert Methoden zum Loeschen |
| | | * von Dateien und Ordnern als Reaktion auf entsprechende |
| | | * Aufrufe mittels HTTP DELETE |
| | | * |
| | | * @author Ulrich Hilger |
| | | * @version 0.1, 08.11.2024 |
| | | */ |
| | | public class FileEraser extends AbstractFileActor { |
| | | |
| | | public void run(HttpExchange exchange) { |
| | | /** |
| | | * <p>Diese Mthode ist als Reaktion auf einen HTTP DELETE aufruf an |
| | | * folgenden URL gedacht</p> |
| | | * |
| | | * <pre> |
| | | * Dateien und Ordner loeschen: |
| | | * http://localhost:[port]/[kontext]/pfad/zum/ordner/ |
| | | * Body: Liste mit Datei- und Ordnernamen, die aus dem im URL |
| | | * angegebenen Ordner geloescht werden sollen, z.B. ["test.txt","dok"] |
| | | * Hiermit werden die Datei test.txt und der Ordner dok geloescht. |
| | | * Das Loeschen geschieht rekursiv, einschliesslich aller Unterordner |
| | | * </pre> |
| | | * |
| | | * @param exchange Das Objekt mit Infos zu HTTP-Request, -Response usw. |
| | | */ |
| | | public void delete(HttpExchange exchange) { |
| | | try { |
| | | super.run(exchange); |
| | | init(exchange); |
| | | String[] dateiNamen = dateiliste(exchange); |
| | | new Eraser().deleteFiles(fileName, Arrays.asList(dateiNamen), base); |
| | | antwort(exchange, HttpResponder.SC_OK, "Dateien geloescht."); |