X-Git-Url: http://dolda2000.com/gitweb/?a=blobdiff_plain;f=src%2Fdolda%2Fjsvc%2Futil%2FRestarts.java;h=d4aab70d2a9e819324a72b7e3c3c165bfce57f83;hb=60ef28853e4aca8b227f533c4b95c03de6574e02;hp=19536675aac529a42e1c3256aa9ee240e94e72b2;hpb=c25c3aadf42cf04fe8dbbfb60624589ba60112bd;p=jsvc.git diff --git a/src/dolda/jsvc/util/Restarts.java b/src/dolda/jsvc/util/Restarts.java index 1953667..d4aab70 100644 --- a/src/dolda/jsvc/util/Restarts.java +++ b/src/dolda/jsvc/util/Restarts.java @@ -2,6 +2,7 @@ package dolda.jsvc.util; import dolda.jsvc.*; import java.net.*; +import java.io.*; public class Restarts { public static RequestRestart redirect(final URL to) { @@ -43,4 +44,44 @@ public class Restarts { } }); } + + public static RequestRestart stdresponse(final int code, final String title, final String message) { + return(new RequestRestart() { + public void respond(Request req) { + req.status(code); + req.outheaders().put("content-type", "text/html; charset=us-ascii"); + PrintWriter out; + try { + out = new PrintWriter(new OutputStreamWriter(req.output(), "US-ASCII")); + } catch(UnsupportedEncodingException e) { + throw(new Error(e)); + } + out.println(""); + out.println(""); + out.println(""); + out.println("" + title + ""); + out.println(""); + out.println("

" + title + "

"); + out.println(message); + out.println(""); + out.println(""); + out.flush(); + } + }); + } + + public static RequestRestart stdresponse(int code, String message) { + return(stdresponse(code, "An error occurred", message)); + } + + public static RequestRestart stdresponse(int code) { + return(stdresponse(code, "An error occurred", Misc.statustext(code))); + } + + public static RequestRestart done() { + return(new RequestRestart() { + public void respond(Request req) { + } + }); + } }