Always write down the JavaScript file in UTF-8 encoding
authorJaroslav Tulach <jaroslav.tulach@apidesign.org>
Fri, 09 Jan 2015 20:46:35 +0100
changeset 1762293838e72201
parent 1761 d2a5a7a0e167
child 1763 647282885e6f
Always write down the JavaScript file in UTF-8 encoding
rt/mojo/src/main/java/org/apidesign/bck2brwsr/mojo/AheadOfTime.java
rt/mojo/src/main/java/org/apidesign/bck2brwsr/mojo/Java2JavaScript.java
rt/vm/src/main/java/org/apidesign/vm4brwsr/Main.java
rt/vm/src/test/java/org/apidesign/vm4brwsr/TestVM.java
rt/vmtest/src/main/java/org/apidesign/bck2brwsr/vmtest/impl/Bck2BrwsrCase.java
     1.1 --- a/rt/mojo/src/main/java/org/apidesign/bck2brwsr/mojo/AheadOfTime.java	Wed Jan 07 14:17:22 2015 +0100
     1.2 +++ b/rt/mojo/src/main/java/org/apidesign/bck2brwsr/mojo/AheadOfTime.java	Fri Jan 09 20:46:35 2015 +0100
     1.3 @@ -19,9 +19,11 @@
     1.4  package org.apidesign.bck2brwsr.mojo;
     1.5  
     1.6  import java.io.File;
     1.7 -import java.io.FileWriter;
     1.8 +import java.io.FileOutputStream;
     1.9  import java.io.IOException;
    1.10  import java.io.InputStream;
    1.11 +import java.io.OutputStreamWriter;
    1.12 +import java.io.Writer;
    1.13  import java.net.MalformedURLException;
    1.14  import java.net.URL;
    1.15  import java.net.URLClassLoader;
    1.16 @@ -135,7 +137,7 @@
    1.17                          c = c.addExported(e.replace('.', '/'));
    1.18                      }
    1.19                  }
    1.20 -                FileWriter w = new FileWriter(mainJavaScript);
    1.21 +                Writer w = new OutputStreamWriter(new FileOutputStream(mainJavaScript), "UTF-8");
    1.22                  c.
    1.23                          obfuscation(obfuscation).
    1.24                          generate(w);
    1.25 @@ -146,7 +148,7 @@
    1.26          }
    1.27              
    1.28          try {
    1.29 -            FileWriter w = new FileWriter(vm);
    1.30 +            Writer w = new OutputStreamWriter(new FileOutputStream(vm), "UTF-8");
    1.31              Bck2Brwsr.newCompiler().
    1.32                      obfuscation(obfuscation).
    1.33                      standalone(false).
    1.34 @@ -198,7 +200,7 @@
    1.35              throw new MojoExecutionException("Not generating " + js + " and no precompiled version found!");
    1.36          }
    1.37          getLog().info("Generating " + js);
    1.38 -        FileWriter w = new FileWriter(js);
    1.39 +        Writer w = new OutputStreamWriter(new FileOutputStream(js), "UTF-8");
    1.40          Bck2Brwsr c = Bck2BrwsrJars.configureFrom(null, a.getFile(), loader);
    1.41          c.
    1.42              obfuscation(obfuscation).
     2.1 --- a/rt/mojo/src/main/java/org/apidesign/bck2brwsr/mojo/Java2JavaScript.java	Wed Jan 07 14:17:22 2015 +0100
     2.2 +++ b/rt/mojo/src/main/java/org/apidesign/bck2brwsr/mojo/Java2JavaScript.java	Fri Jan 09 20:46:35 2015 +0100
     2.3 @@ -20,8 +20,10 @@
     2.4  import org.apache.maven.plugin.AbstractMojo;
     2.5  
     2.6  import java.io.File;
     2.7 -import java.io.FileWriter;
     2.8 +import java.io.FileOutputStream;
     2.9  import java.io.IOException;
    2.10 +import java.io.OutputStreamWriter;
    2.11 +import java.io.Writer;
    2.12  import java.net.MalformedURLException;
    2.13  import java.net.URL;
    2.14  import java.net.URLClassLoader;
    2.15 @@ -107,7 +109,7 @@
    2.16  
    2.17          try {
    2.18              URLClassLoader url = buildClassLoader(classes, prj.getArtifacts());
    2.19 -            FileWriter w = new FileWriter(javascript);
    2.20 +            Writer w = new OutputStreamWriter(new FileOutputStream(javascript), "UTF-8");
    2.21              Bck2Brwsr c = Bck2Brwsr.newCompiler().
    2.22                  obfuscation(obfuscation).
    2.23                  resources(url, ignoreBootClassPath).
     3.1 --- a/rt/vm/src/main/java/org/apidesign/vm4brwsr/Main.java	Wed Jan 07 14:17:22 2015 +0100
     3.2 +++ b/rt/vm/src/main/java/org/apidesign/vm4brwsr/Main.java	Fri Jan 09 20:46:35 2015 +0100
     3.3 @@ -19,8 +19,9 @@
     3.4  
     3.5  import java.io.BufferedWriter;
     3.6  import java.io.File;
     3.7 -import java.io.FileWriter;
     3.8 +import java.io.FileOutputStream;
     3.9  import java.io.IOException;
    3.10 +import java.io.OutputStreamWriter;
    3.11  import java.io.Writer;
    3.12  import java.net.URI;
    3.13  import java.net.URISyntaxException;
    3.14 @@ -104,7 +105,7 @@
    3.15              System.exit(0);
    3.16          }
    3.17          
    3.18 -        try (Writer w = new BufferedWriter(new FileWriter(gt))) {
    3.19 +        try (Writer w = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(gt), "UTF-8"))) {
    3.20              Bck2Brwsr c = Bck2Brwsr.newCompiler().
    3.21                  obfuscation(obfLevel).
    3.22                  addRootClasses(classes.toArray()).
     4.1 --- a/rt/vm/src/test/java/org/apidesign/vm4brwsr/TestVM.java	Wed Jan 07 14:17:22 2015 +0100
     4.2 +++ b/rt/vm/src/test/java/org/apidesign/vm4brwsr/TestVM.java	Fri Jan 09 20:46:35 2015 +0100
     4.3 @@ -19,9 +19,11 @@
     4.4  
     4.5  import java.io.ByteArrayInputStream;
     4.6  import java.io.File;
     4.7 -import java.io.FileWriter;
     4.8 +import java.io.FileOutputStream;
     4.9  import java.io.IOException;
    4.10  import java.io.InputStream;
    4.11 +import java.io.OutputStreamWriter;
    4.12 +import java.io.Writer;
    4.13  import java.net.URL;
    4.14  import java.util.ArrayList;
    4.15  import java.util.Arrays;
    4.16 @@ -258,7 +260,7 @@
    4.17  
    4.18      static StringBuilder dumpJS(CharSequence sb) throws IOException {
    4.19          File f = File.createTempFile("execution", ".js");
    4.20 -        FileWriter w = new FileWriter(f);
    4.21 +        Writer w = new OutputStreamWriter(new FileOutputStream(f), "UTF-8");
    4.22          w.append(sb);
    4.23          w.close();
    4.24          return new StringBuilder(f.getPath());
     5.1 --- a/rt/vmtest/src/main/java/org/apidesign/bck2brwsr/vmtest/impl/Bck2BrwsrCase.java	Wed Jan 07 14:17:22 2015 +0100
     5.2 +++ b/rt/vmtest/src/main/java/org/apidesign/bck2brwsr/vmtest/impl/Bck2BrwsrCase.java	Fri Jan 09 20:46:35 2015 +0100
     5.3 @@ -19,9 +19,11 @@
     5.4  
     5.5  import java.io.ByteArrayInputStream;
     5.6  import java.io.File;
     5.7 -import java.io.FileWriter;
     5.8 +import java.io.FileOutputStream;
     5.9  import java.io.IOException;
    5.10  import java.io.InputStream;
    5.11 +import java.io.OutputStreamWriter;
    5.12 +import java.io.Writer;
    5.13  import java.lang.reflect.Constructor;
    5.14  import java.lang.reflect.InvocationTargetException;
    5.15  import java.lang.reflect.Method;
    5.16 @@ -130,7 +132,7 @@
    5.17      }
    5.18      static void dumpJS(StringBuilder sb, Bck2BrwsrCase c) throws IOException {
    5.19          File f = File.createTempFile(c.m.getName(), ".js");
    5.20 -        try (final FileWriter w = new FileWriter(f)) {
    5.21 +        try (final Writer w = new OutputStreamWriter(new FileOutputStream(f), "UTF-8")) {
    5.22              w.append(c.l.toString());
    5.23          }
    5.24          sb.append("Path: ").append(f.getPath());