1.1 --- a/boot-script/src/test/java/net/java/html/boot/script/ko4j/DynamicHTTP.java Wed May 20 06:27:27 2015 +0200
1.2 +++ b/boot-script/src/test/java/net/java/html/boot/script/ko4j/DynamicHTTP.java Wed May 27 22:40:01 2015 +0200
1.3 @@ -76,28 +76,28 @@
1.4 private static List<Resource> resources;
1.5 private static ServerConfiguration conf;
1.6 private static HttpServer server;
1.7 -
1.8 +
1.9 private DynamicHTTP() {
1.10 }
1.11 -
1.12 +
1.13 static URI initServer() throws Exception {
1.14 server = HttpServer.createSimpleServer(null, new PortRange(8080, 65535));
1.15 final WebSocketAddOn addon = new WebSocketAddOn();
1.16 for (NetworkListener listener : server.getListeners()) {
1.17 listener.registerAddOn(addon);
1.18 - }
1.19 + }
1.20 resources = new ArrayList<Resource>();
1.21
1.22 conf = server.getServerConfiguration();
1.23 final DynamicHTTP dh = new DynamicHTTP();
1.24
1.25 conf.addHttpHandler(dh, "/");
1.26 -
1.27 +
1.28 server.start();
1.29
1.30 return pageURL("http", server, "/test.html");
1.31 }
1.32 -
1.33 +
1.34 @Override
1.35 public void service(Request request, Response response) throws Exception {
1.36 if ("/test.html".equals(request.getRequestURI())) {
1.37 @@ -159,6 +159,8 @@
1.38 sb.append((char) ch);
1.39 }
1.40 params[i] = sb.toString();
1.41 + } else if (r.parameters[i].startsWith("http.header.")) {
1.42 + params[i] = request.getHeader(r.parameters[i].substring(12));
1.43 }
1.44 }
1.45 if (params[i] == null) {
1.46 @@ -171,7 +173,7 @@
1.47 }
1.48 }
1.49 }
1.50 -
1.51 +
1.52 private URI registerWebSocket(Resource r) {
1.53 WebSocketEngine.getEngine().register("", r.httpPath, new WS(r));
1.54 return pageURL("ws", server, r.httpPath);
1.55 @@ -184,7 +186,7 @@
1.56 }
1.57 return pageURL("http", server, r.httpPath);
1.58 }
1.59 -
1.60 +
1.61 private static URI pageURL(String proto, HttpServer server, final String page) {
1.62 NetworkListener listener = server.getListeners().iterator().next();
1.63 int port = listener.getPort();
1.64 @@ -194,7 +196,7 @@
1.65 throw new IllegalStateException(ex);
1.66 }
1.67 }
1.68 -
1.69 +
1.70 static final class Resource {
1.71
1.72 final InputStream httpContent;
1.73 @@ -235,7 +237,7 @@
1.74 }
1.75 }
1.76 }
1.77 -
1.78 +
1.79 private static class WS extends WebSocketApplication {
1.80 private final Resource r;
1.81