Asciidoctor mit Neon transformieren
ulrich
2021-06-25 f5adf51f59628c210d6bc8838df99d9b64002ee5
Logik in den Actor ausgelagert
2 files modified
19 ■■■■ changed files
src/de/uhilger/httpserver/adoc/AdocActor.java 13 ●●●●● patch | view | raw | blame | history
src/de/uhilger/httpserver/adoc/AdocHandler.java 6 ●●●●● patch | view | raw | blame | history
src/de/uhilger/httpserver/adoc/AdocActor.java
@@ -17,7 +17,10 @@
 */
package de.uhilger.httpserver.adoc;
import com.sun.net.httpserver.HttpExchange;
import de.uhilger.httpserver.base.HttpResponder;
import java.io.File;
import java.io.IOException;
import java.util.Map;
import java.util.logging.Level;
import java.util.logging.Logger;
@@ -46,6 +49,16 @@
  public static final String HTML = "html";
  public static final String PDF = "pdf";
  
  public void handle(HttpExchange e, String fileBase, String fileName) throws IOException {
    File adocfile = new File(fileBase, fileName);
    logger.fine("adocfile: " + adocfile.getAbsolutePath());
    AdocActor actor = new AdocActor();
    File outfile = actor.getTargetFile(adocfile, AdocActor.HTML);
    logger.fine("outfile: " + outfile.getAbsolutePath());
    HttpResponder fs = new HttpResponder();
    fs.serveFile(e, outfile);
  }
  public File getTargetFile(File adocfile, String ext) {
    String nameext = adocfile.getName();
    String fname = nameext.substring(0, nameext.lastIndexOf(DOT));
src/de/uhilger/httpserver/adoc/AdocHandler.java
@@ -18,9 +18,7 @@
package de.uhilger.httpserver.adoc;
import com.sun.net.httpserver.HttpExchange;
import de.uhilger.httpserver.base.HttpResponder;
import de.uhilger.httpserver.base.handler.FileHandler;
import java.io.File;
import java.io.IOException;
import java.net.URI;
import java.util.logging.Logger;
@@ -53,6 +51,9 @@
    String requestPathStr = uri.getPath();
    //logger.fine("filter: " + requestUriStr);    
    if(requestPathStr.toLowerCase().endsWith(AdocFilter.ADOC)) {
      AdocActor actor = new AdocActor();
      actor.handle(e, fileBase, getFileName(e));
      /*
      File adocfile = new File(fileBase, getFileName(e));
      logger.fine("adocfile: " + adocfile.getAbsolutePath());
      AdocActor actor = new AdocActor();
@@ -60,6 +61,7 @@
      logger.fine("outfile: " + outfile.getAbsolutePath());
      HttpResponder fs = new HttpResponder();
      fs.serveFile(e, outfile);
      */
    } else {
      super.handle(e); // andere Inhalte zu FileHandler delegieren
    }