Keep the VM code, don't regenerate it every time
authorJaroslav Tulach <jaroslav.tulach@apidesign.org>
Fri, 25 Jan 2013 10:51:20 +0100
changeset 5802f42cd9b5531
parent 579 942deef87200
child 583 09f051f10096
child 587 a7a45e5e5e77
Keep the VM code, don't regenerate it every time
dew/src/main/java/org/apidesign/bck2brwsr/dew/DewLauncher.java
launcher/src/main/java/org/apidesign/bck2brwsr/launcher/Bck2BrwsrLauncher.java
     1.1 --- a/dew/src/main/java/org/apidesign/bck2brwsr/dew/DewLauncher.java	Fri Jan 25 10:25:30 2013 +0100
     1.2 +++ b/dew/src/main/java/org/apidesign/bck2brwsr/dew/DewLauncher.java	Fri Jan 25 10:51:20 2013 +0100
     1.3 @@ -56,7 +56,7 @@
     1.4          this.loaders.add(url);
     1.5      }
     1.6  
     1.7 -    final HttpServer initServer(Bck2Brwsr.Resources... extraResources) {
     1.8 +    final HttpServer initServer(Bck2Brwsr.Resources... extraResources) throws IOException {
     1.9          xRes.addAll(Arrays.asList(extraResources));
    1.10          
    1.11          HttpServer s = HttpServer.createSimpleServer(".", new PortRange(8080, 65535));
    1.12 @@ -125,17 +125,19 @@
    1.13      }
    1.14  
    1.15      private static class VM extends HttpHandler {
    1.16 -        private final Res loader;
    1.17 +        private final String bck2brwsr;
    1.18  
    1.19 -        public VM(Res loader) {
    1.20 -            this.loader = loader;
    1.21 +        public VM(Res loader) throws IOException {
    1.22 +            StringBuilder sb = new StringBuilder();
    1.23 +            Bck2Brwsr.generate(sb, loader);
    1.24 +            this.bck2brwsr = sb.toString();
    1.25          }
    1.26  
    1.27          @Override
    1.28          public void service(Request request, Response response) throws Exception {
    1.29              response.setCharacterEncoding("UTF-8");
    1.30              response.setContentType("text/javascript");
    1.31 -            Bck2Brwsr.generate(response.getWriter(), loader);
    1.32 +            response.getWriter().write(bck2brwsr);
    1.33          }
    1.34      }
    1.35      private static class VMInit extends HttpHandler {
     2.1 --- a/launcher/src/main/java/org/apidesign/bck2brwsr/launcher/Bck2BrwsrLauncher.java	Fri Jan 25 10:25:30 2013 +0100
     2.2 +++ b/launcher/src/main/java/org/apidesign/bck2brwsr/launcher/Bck2BrwsrLauncher.java	Fri Jan 25 10:51:20 2013 +0100
     2.3 @@ -122,7 +122,7 @@
     2.4          }
     2.5      }
     2.6      
     2.7 -    private HttpServer initServer() {
     2.8 +    private HttpServer initServer() throws IOException {
     2.9          HttpServer s = HttpServer.createSimpleServer(".", new PortRange(8080, 65535));
    2.10  
    2.11          final ServerConfiguration conf = s.getServerConfiguration();
    2.12 @@ -410,17 +410,19 @@
    2.13      }
    2.14  
    2.15      private static class VM extends HttpHandler {
    2.16 -        private final Res loader;
    2.17 +        private final String bck2brwsr;
    2.18  
    2.19 -        public VM(Res loader) {
    2.20 -            this.loader = loader;
    2.21 +        public VM(Res loader) throws IOException {
    2.22 +            StringBuilder sb = new StringBuilder();
    2.23 +            Bck2Brwsr.generate(sb, loader);
    2.24 +            this.bck2brwsr = sb.toString();
    2.25          }
    2.26  
    2.27          @Override
    2.28          public void service(Request request, Response response) throws Exception {
    2.29              response.setCharacterEncoding("UTF-8");
    2.30              response.setContentType("text/javascript");
    2.31 -            Bck2Brwsr.generate(response.getWriter(), loader);
    2.32 +            response.getWriter().write(bck2brwsr);
    2.33          }
    2.34      }
    2.35      private static class VMInit extends HttpHandler {