changeset 750:02ad91fb3438

UTF-8 is a standard character set, which is always available in Java Runtime. Use it and avoid looking it up every time.
author Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
date Thu, 23 Mar 2023 14:36:59 +0100 (2023-03-23)
parents a604e71a875e
children 1566dbfaa13b
files src/main/java/org/monetdb/mcl/io/BufferedMCLReader.java src/main/java/org/monetdb/mcl/io/BufferedMCLWriter.java src/main/java/org/monetdb/mcl/net/MapiSocket.java
diffstat 3 files changed, 11 insertions(+), 22 deletions(-) [+]
line wrap: on
line diff
--- a/src/main/java/org/monetdb/mcl/io/BufferedMCLReader.java
+++ b/src/main/java/org/monetdb/mcl/io/BufferedMCLReader.java
@@ -12,7 +12,7 @@ import java.io.BufferedReader;
 import java.io.IOException;
 import java.io.InputStream;
 import java.io.Reader;
-import java.io.UnsupportedEncodingException;
+import java.nio.charset.Charset;
 
 /**
  * Helper class to read and classify the lines of a query response.
@@ -55,13 +55,10 @@ public final class BufferedMCLReader {
 	 * default-sized input buffer, from an InputStream.
 	 *
 	 * @param in An InputStream
-	 * @param enc Encoding
-	 * @throws UnsupportedEncodingException If encoding is not supported
+	 * @param cs A Charset
 	 */
-	public BufferedMCLReader(final InputStream in, final String enc)
-		throws UnsupportedEncodingException
-	{
-		this(new java.io.InputStreamReader(in, enc));
+	public BufferedMCLReader(final InputStream in, final Charset cs) {
+		this(new java.io.InputStreamReader(in, cs));
 	}
 
 	/**
--- a/src/main/java/org/monetdb/mcl/io/BufferedMCLWriter.java
+++ b/src/main/java/org/monetdb/mcl/io/BufferedMCLWriter.java
@@ -11,8 +11,8 @@ package org.monetdb.mcl.io;
 import java.io.BufferedWriter;
 import java.io.IOException;
 import java.io.OutputStream;
-import java.io.UnsupportedEncodingException;
 import java.io.Writer;
+import java.nio.charset.Charset;
 
 /**
  * Write text to a character-output stream, buffering characters so as
@@ -53,13 +53,10 @@ public final class BufferedMCLWriter ext
 	 * default-sized output buffer, from an OutputStream.
 	 *
 	 * @param in An OutputStream
-	 * @param enc Encoding
-	 * @throws UnsupportedEncodingException If encoding is not supported
+	 * @param cs A Charset
 	 */
-	public BufferedMCLWriter(final OutputStream in, final String enc)
-		throws UnsupportedEncodingException
-	{
-		super(new java.io.OutputStreamWriter(in, enc));
+	public BufferedMCLWriter(final OutputStream in, final Charset cs) {
+		super(new java.io.OutputStreamWriter(in, cs));
 	}
 
 	/**
--- a/src/main/java/org/monetdb/mcl/net/MapiSocket.java
+++ b/src/main/java/org/monetdb/mcl/net/MapiSocket.java
@@ -16,7 +16,6 @@ import java.io.FilterOutputStream;
 import java.io.IOException;
 import java.io.InputStream;
 import java.io.OutputStream;
-import java.io.UnsupportedEncodingException;
 import java.io.Writer;
 import java.net.Socket;
 import java.net.SocketException;
@@ -296,13 +295,9 @@ public class MapiSocket {	/* cannot (yet
 
 			fromMonet = new BlockInputStream(con.getInputStream());
 			toMonet = new BlockOutputStream(con.getOutputStream());
-			try {
-				reader = new BufferedMCLReader(fromMonet, "UTF-8");
-				writer = new BufferedMCLWriter(toMonet, "UTF-8");
-				writer.registerReader(reader);
-			} catch (UnsupportedEncodingException e) {
-				throw new MCLException(e.toString());
-			}
+			reader = new BufferedMCLReader(fromMonet, StandardCharsets.UTF_8);
+			writer = new BufferedMCLWriter(toMonet, StandardCharsets.UTF_8);
+			writer.registerReader(reader);
 		}
 
 		reader.advance();