This is an automated email from the ASF dual-hosted git repository. ebourg pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/tomcat-jakartaee-migration.git
commit 884aa46156a8d12634737e4bf1d73c3afc8cd51c Author: Emmanuel Bourg <ebo...@apache.org> AuthorDate: Tue Apr 7 02:37:29 2020 +0200 Moved common stream operation methods to the Util class --- .../tomcat/jakartaee/PassThroughConverter.java | 6 +----- .../org/apache/tomcat/jakartaee/TextConverter.java | 22 ++++------------------ .../java/org/apache/tomcat/jakartaee/Util.java | 21 +++++++++++++++++++++ 3 files changed, 26 insertions(+), 23 deletions(-) diff --git a/src/main/java/org/apache/tomcat/jakartaee/PassThroughConverter.java b/src/main/java/org/apache/tomcat/jakartaee/PassThroughConverter.java index 9b44ca5..24c01f9 100644 --- a/src/main/java/org/apache/tomcat/jakartaee/PassThroughConverter.java +++ b/src/main/java/org/apache/tomcat/jakartaee/PassThroughConverter.java @@ -31,10 +31,6 @@ public class PassThroughConverter implements Converter { @Override public void convert(InputStream src, OutputStream dest, EESpecProfile profile) throws IOException { // This simply copies the source to the destination - byte[] buf = new byte[8192]; - int numRead; - while ((numRead = src.read(buf)) >= 0) { - dest.write(buf, 0, numRead); - } + Util.copy(src, dest); } } diff --git a/src/main/java/org/apache/tomcat/jakartaee/TextConverter.java b/src/main/java/org/apache/tomcat/jakartaee/TextConverter.java index e0fdc2f..5ad1b0b 100644 --- a/src/main/java/org/apache/tomcat/jakartaee/TextConverter.java +++ b/src/main/java/org/apache/tomcat/jakartaee/TextConverter.java @@ -17,7 +17,6 @@ package org.apache.tomcat.jakartaee; import java.io.ByteArrayInputStream; -import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; @@ -60,25 +59,12 @@ public class TextConverter implements Converter { */ @Override public void convert(InputStream src, OutputStream dest, EESpecProfile profile) throws IOException { - ByteArrayOutputStream baos = new ByteArrayOutputStream(); - flow(src, baos); - - String srcString = new String(baos.toByteArray(), StandardCharsets.ISO_8859_1); - + String srcString = Util.toString(src, StandardCharsets.ISO_8859_1); String destString = profile.convert(srcString); - ByteArrayInputStream bais = new ByteArrayInputStream(destString.getBytes(StandardCharsets.ISO_8859_1)); - flow (bais, dest); - } - + dest.write(destString.getBytes()); - private static void flow(InputStream is, OutputStream os) throws IOException { - byte[] buf = new byte[8192]; - int numRead; - while ( (numRead = is.read(buf) ) >= 0) { - if (os != null) { - os.write(buf, 0, numRead); - } - } + ByteArrayInputStream bais = new ByteArrayInputStream(destString.getBytes(StandardCharsets.ISO_8859_1)); + Util.copy(bais, dest); } } diff --git a/src/main/java/org/apache/tomcat/jakartaee/Util.java b/src/main/java/org/apache/tomcat/jakartaee/Util.java index edd7203..7189d8a 100644 --- a/src/main/java/org/apache/tomcat/jakartaee/Util.java +++ b/src/main/java/org/apache/tomcat/jakartaee/Util.java @@ -16,6 +16,12 @@ */ package org.apache.tomcat.jakartaee; +import java.io.ByteArrayOutputStream; +import java.io.IOException; +import java.io.InputStream; +import java.io.OutputStream; +import java.nio.charset.Charset; +import java.nio.charset.StandardCharsets; import java.util.Locale; public class Util { @@ -36,6 +42,21 @@ public class Util { return filename.substring(lastPeriod + 1).toLowerCase(Locale.ENGLISH); } + public static void copy(InputStream is, OutputStream os) throws IOException { + byte[] buf = new byte[8192]; + int numRead; + while ( (numRead = is.read(buf) ) >= 0) { + os.write(buf, 0, numRead); + } + } + + public static String toString(InputStream is, Charset charset) throws IOException { + ByteArrayOutputStream baos = new ByteArrayOutputStream(); + Util.copy(is, baos); + + return new String(baos.toByteArray(), StandardCharsets.ISO_8859_1); + } + private Util() { // Hide default constructor. Utility class. } --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org