This is an automated email from the ASF dual-hosted git repository.

sunlan pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/groovy.git


The following commit(s) were added to refs/heads/master by this push:
     new ab91f6b  Trivial refactoring: Standard Charset object can be used
ab91f6b is described below

commit ab91f6bb795a251f053a01b80703032e504dbb82
Author: Daniel Sun <[email protected]>
AuthorDate: Sat Apr 11 20:24:51 2020 +0800

    Trivial refactoring: Standard Charset object can be used
---
 src/main/java/groovy/util/CharsetToolkit.java                 | 11 ++++++-----
 .../java/org/codehaus/groovy/control/io/FileReaderSource.java |  3 ++-
 .../org/codehaus/groovy/runtime/EncodingGroovyMethods.java    |  7 +------
 .../codehaus/groovy/transform/ASTTransformationVisitor.java   |  3 ++-
 4 files changed, 11 insertions(+), 13 deletions(-)

diff --git a/src/main/java/groovy/util/CharsetToolkit.java 
b/src/main/java/groovy/util/CharsetToolkit.java
index 7b2d0d8..89d977e 100644
--- a/src/main/java/groovy/util/CharsetToolkit.java
+++ b/src/main/java/groovy/util/CharsetToolkit.java
@@ -27,6 +27,7 @@ import java.io.InputStream;
 import java.io.InputStreamReader;
 import java.io.LineNumberReader;
 import java.nio.charset.Charset;
+import java.nio.charset.StandardCharsets;
 import java.util.Collection;
 
 /**
@@ -164,11 +165,11 @@ public class CharsetToolkit {
         // if the file has a Byte Order Marker, we can assume the file is in 
UTF-xx
         // otherwise, the file would not be human readable
         if (hasUTF8Bom())
-            return Charset.forName("UTF-8");
+            return StandardCharsets.UTF_8;
         if (hasUTF16LEBom())
-            return Charset.forName("UTF-16LE");
+            return StandardCharsets.UTF_16LE;
         if (hasUTF16BEBom())
-            return Charset.forName("UTF-16BE");
+            return StandardCharsets.UTF_16BE;
 
         // if a byte has its most significant bit set, the file is in UTF-8 or 
in the default encoding
         // otherwise, the file is in US-ASCII
@@ -259,12 +260,12 @@ public class CharsetToolkit {
             if (this.enforce8Bit)
                 return this.defaultCharset;
             else
-                return Charset.forName("US-ASCII");
+                return StandardCharsets.US_ASCII;
         }
         // if no invalid UTF-8 were encountered, we can assume the encoding is 
UTF-8,
         // otherwise the file would not be human readable
         if (validU8Char)
-            return Charset.forName("UTF-8");
+            return StandardCharsets.UTF_8;
         // finally, if it's not UTF-8 nor US-ASCII, let's assume the encoding 
is the default encoding
         return this.defaultCharset;
     }
diff --git a/src/main/java/org/codehaus/groovy/control/io/FileReaderSource.java 
b/src/main/java/org/codehaus/groovy/control/io/FileReaderSource.java
index 07700d3..8e117d9 100644
--- a/src/main/java/org/codehaus/groovy/control/io/FileReaderSource.java
+++ b/src/main/java/org/codehaus/groovy/control/io/FileReaderSource.java
@@ -29,13 +29,14 @@ import java.io.InputStreamReader;
 import java.io.Reader;
 import java.net.URI;
 import java.nio.charset.Charset;
+import java.nio.charset.StandardCharsets;
 
 /**
  *  A ReaderSource for source files.
  */
 public class FileReaderSource extends AbstractReaderSource {
     private final File file;  // The File from which we produce Readers.
-    private final Charset UTF8 = Charset.forName("UTF-8");
+    private final Charset UTF8 = StandardCharsets.UTF_8;
 
    /**
     *  Creates the ReaderSource from a File descriptor.
diff --git 
a/src/main/java/org/codehaus/groovy/runtime/EncodingGroovyMethods.java 
b/src/main/java/org/codehaus/groovy/runtime/EncodingGroovyMethods.java
index 2d4ba4f..ee8abcd 100644
--- a/src/main/java/org/codehaus/groovy/runtime/EncodingGroovyMethods.java
+++ b/src/main/java/org/codehaus/groovy/runtime/EncodingGroovyMethods.java
@@ -24,7 +24,6 @@ import org.apache.groovy.io.StringBuilderWriter;
 import org.codehaus.groovy.runtime.typehandling.DefaultTypeTransformation;
 
 import java.io.IOException;
-import java.io.UnsupportedEncodingException;
 import java.io.Writer;
 import java.nio.ByteBuffer;
 import java.nio.charset.StandardCharsets;
@@ -285,11 +284,7 @@ public class EncodingGroovyMethods {
             if (byteShift == 0) byteShift = 4;
         }
 
-        try {
-            return buffer.toString().getBytes("ISO-8859-1");
-        } catch (UnsupportedEncodingException e) {
-            throw new RuntimeException("Base 64 decode produced byte values > 
255"); // TODO: change this exception type
-        }
+        return buffer.toString().getBytes(StandardCharsets.ISO_8859_1);
     }
 
     /**
diff --git 
a/src/main/java/org/codehaus/groovy/transform/ASTTransformationVisitor.java 
b/src/main/java/org/codehaus/groovy/transform/ASTTransformationVisitor.java
index ee9bebc..48249d3 100644
--- a/src/main/java/org/codehaus/groovy/transform/ASTTransformationVisitor.java
+++ b/src/main/java/org/codehaus/groovy/transform/ASTTransformationVisitor.java
@@ -45,6 +45,7 @@ import java.io.InputStreamReader;
 import java.lang.reflect.InvocationTargetException;
 import java.net.URISyntaxException;
 import java.net.URL;
+import java.nio.charset.StandardCharsets;
 import java.util.ArrayList;
 import java.util.Collections;
 import java.util.Enumeration;
@@ -241,7 +242,7 @@ public final class ASTTransformationVisitor extends 
ClassCodeVisitorSupport {
             while (globalServices.hasMoreElements()) {
                 URL service = globalServices.nextElement();
                 String className;
-                try (BufferedReader svcIn = new BufferedReader(new 
InputStreamReader(URLStreams.openUncachedStream(service), "UTF-8"))) {
+                try (BufferedReader svcIn = new BufferedReader(new 
InputStreamReader(URLStreams.openUncachedStream(service), 
StandardCharsets.UTF_8))) {
                     try {
                         className = svcIn.readLine();
                     } catch (IOException ioe) {

Reply via email to