The bck2brwsr.js property can also point to an existing file on disk
authorJaroslav Tulach <jaroslav.tulach@apidesign.org>
Wed, 23 Oct 2013 15:15:48 +0200
changeset 13896a41a849ea6b
parent 1388 d28e1c58f508
child 1390 fe8f6b27c702
The bck2brwsr.js property can also point to an existing file on disk
launcher/http/src/main/java/org/apidesign/bck2brwsr/launcher/Bck2BrwsrLauncher.java
     1.1 --- a/launcher/http/src/main/java/org/apidesign/bck2brwsr/launcher/Bck2BrwsrLauncher.java	Wed Oct 23 14:56:31 2013 +0200
     1.2 +++ b/launcher/http/src/main/java/org/apidesign/bck2brwsr/launcher/Bck2BrwsrLauncher.java	Wed Oct 23 15:15:48 2013 +0200
     1.3 @@ -23,6 +23,7 @@
     1.4  import java.io.InputStream;
     1.5  import java.io.InputStreamReader;
     1.6  import java.io.Reader;
     1.7 +import java.net.MalformedURLException;
     1.8  import java.net.URL;
     1.9  import java.util.logging.Level;
    1.10  import org.apidesign.vm4brwsr.Bck2Brwsr;
    1.11 @@ -54,7 +55,18 @@
    1.12          String b2b = System.getProperty("bck2brwsr.js");
    1.13          if (b2b != null) {
    1.14              LOG.log(Level.INFO, "Serving bck2brwsr.js from {0}", b2b);
    1.15 -            try (Reader r = new InputStreamReader(new URL(b2b).openStream())) {
    1.16 +            URL bu;
    1.17 +            try {
    1.18 +                bu = new URL(b2b);
    1.19 +            } catch (MalformedURLException ex) {
    1.20 +                File f = new File(b2b);
    1.21 +                if (f.exists()) {
    1.22 +                    bu = f.toURI().toURL();
    1.23 +                } else {
    1.24 +                    throw ex;
    1.25 +                }
    1.26 +            }
    1.27 +            try (Reader r = new InputStreamReader(bu.openStream())) {
    1.28                  char[] arr = new char[4096];
    1.29                  for (;;) {
    1.30                     int len = r.read(arr);