Basisklassen zum Modul jdk.httpserver
ulrich
2021-06-30 a488df6e8cc5f2b6800c6b718aa65b8b16c9764c
auf Attribute des HttpContext umgestellt
1 files modified
16 ■■■■■ changed files
src/de/uhilger/httpserver/base/handler/FileHandler.java 16 ●●●●● patch | view | raw | blame | history
src/de/uhilger/httpserver/base/handler/FileHandler.java
@@ -71,7 +71,9 @@
  public static final String WELCOME_FILE = "index.html";
  /* Ablageort fuer Webinhalte */
  protected final String fileBase;
  //protected final String fileBase;
  public static final String ATTR_FILE_BASE = "fileBase";
  /**
   * Ein neues Objekt der Klasse FileHandler erzeugen
@@ -80,9 +82,11 @@
   * Ordners im Dateisystem, der die Inhalte enthaelt, die von diesem 
   * Handler ausgeliefert werden sollen
   */
  /*
  public FileHandler(String absoluteDirectoryPathAndName) {
    this.fileBase = absoluteDirectoryPathAndName;
  }
  */
  /**
   * Die Datei ermitteln, die sich aus dem angefragten URL ergibt, prüfen,
@@ -103,13 +107,13 @@
      Headers headers = e.getRequestHeaders();
      if (headers.containsKey(RANGE_HEADER)) {
        FileActor fa = new FileActor();
        fa.serveFileParts(e, new File(fileBase, fName));
        fa.serveFileParts(e, new File(e.getHttpContext().getAttributes().get(ATTR_FILE_BASE).toString(), fName));
      } else {
        if (fName.length() < 1 || fName.endsWith(STR_SLASH)) {
          fName += WELCOME_FILE;
        }
        HttpResponder fs = new HttpResponder();
        fs.serveFile(e, new File(fileBase, fName));
        fs.serveFile(e, new File(e.getHttpContext().getAttributes().get(ATTR_FILE_BASE).toString(), fName));
      }
    }
  }
@@ -128,8 +132,8 @@
    return uriPath.substring(ctxPath.length());
  }
  
  public String getFileBase() {
    return this.fileBase;
  }
  /*public String getFileBase() {
    return this.e.getHttpContext().getAttributes().get(ATTR_FILE_BASE).toString();
  }*/
  
}