From 8b9c74e666021152c73db133f772dc68f5efb36c Mon Sep 17 00:00:00 2001 From: ulrich Date: Tue, 26 Oct 2021 11:22:38 +0000 Subject: [PATCH] PDF ergaenzt (noch experimentell) --- src/de/uhilger/httpserver/adoc/AdocActor.java | 35 ++++++++++++++++++----------------- 1 files changed, 18 insertions(+), 17 deletions(-) diff --git a/src/de/uhilger/httpserver/adoc/AdocActor.java b/src/de/uhilger/httpserver/adoc/AdocActor.java index eda9c5c..d12270a 100644 --- a/src/de/uhilger/httpserver/adoc/AdocActor.java +++ b/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,21 @@ public static final String HTML = "html"; public static final String PDF = "pdf"; + public void handle(HttpExchange e, String fileBase, String fileName, boolean pdf) throws IOException { + File adocfile = new File(fileBase, fileName); + logger.fine("adocfile: " + adocfile.getAbsolutePath()); + AdocActor actor = new AdocActor(); + File outfile; + if(pdf) { + outfile = actor.getTargetFile(adocfile, AdocActor.PDF); + } else { + 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)); @@ -60,12 +78,6 @@ logger.log(Level.FINE, "in: {0}", absname); // HTML-Datei ermitteln - //String nameext = adocfile.getName(); - //String fname = nameext.substring(0, nameext.lastIndexOf(DOT)); - //File htmlfile = new File(adocfile.getParentFile(), fname + DOT + HTML); - //File outfile = htmlfile; // Standardmaessig wird HTML zurueckgegeben - //logger.fine("out: " + outfile.getAbsolutePath()); - //response.setCharacterEncoding("UTF-8"); File outfile = getTargetFile(adocfile, HTML); File htmlfile = outfile; @@ -92,17 +104,6 @@ //response.setContentType("application/pdf"); transform(absname, PDF); } - //ServletOutputStream os = response.getOutputStream(); - //InputStream bytes = new FileInputStream(outfile); - //int b = bytes.read(); - //while(b > -1 ) { - // os.write(b); - // b = bytes.read(); - //} - } else { - //PrintWriter out = response.getWriter(); - //InputStreamReader in = new InputStreamReader(new FileInputStream(outfile), "UTF-8"); - //in.transferTo(out); } } -- Gitblit v1.9.3