| | |
| | | import java.util.logging.Logger; |
| | | |
| | | /** |
| | | * Eine Klasse mit Methoden zur Erzeugung von Ordnern und Dateien |
| | | * |
| | | * @author Ulrich Hilger |
| | | * @version 0.1, 08.11.2024 |
| | | */ |
| | | public class FileCreator extends AbstractFileActor { |
| | | |
| | | public void run(HttpExchange exchange) { |
| | | /** |
| | | * Die methode run legt Ordner und Dateien neu an, sofern im hier |
| | | * uebergebenen HttpExchange Objekt die folgenden Angaben zu finden |
| | | * sind: |
| | | * |
| | | * <pre> |
| | | * Datei neu anlegen (ohne Ueberschreiben): |
| | | * http://localhost:[port]/[kontext]/pfad/zur/datei.txt |
| | | * Body: Dateiinhalt |
| | | * Erzeugt eine neue Datei mit einer laufenden Nummer, |
| | | * falls die per URL angegebene Datei schon existiert |
| | | * |
| | | * Ordner anlegen: |
| | | * http://localhost:[port]/[kontext]/pfad/zum/ordner/ |
| | | * erzeugt einen HTTP-Fehler 422, wenn der Ordner schon existiert |
| | | * </pre> |
| | | * |
| | | * @param exchange Infos zu HTTP Request, -Response, Kontext usw. |
| | | */ |
| | | public void create(HttpExchange exchange) { |
| | | try { |
| | | super.run(exchange); |
| | | init(exchange); |
| | | if (fileName.endsWith(FileServer.STR_SLASH)) { // es ist ein Ordner |
| | | if (!file.exists()) { |
| | | file.mkdir(); |
| | |
| | | file = trans.getNewFileName(file); |
| | | } |
| | | speichern(exchange); |
| | | } |
| | | } |
| | | } catch (IOException ex) { |
| | | Logger.getLogger(FileCreator.class.getName()).log(Level.SEVERE, ex.getMessage(), ex); |
| | | } finally { |