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 29ea1891489060f3b3e40259098def5ae47645ef
Author: Emmanuel Bourg <ebo...@apache.org>
AuthorDate: Mon Apr 6 15:24:35 2020 +0200

    Replaced NonClosing{In,Out}putStream with the equivalent classes from 
Commons IO
---
 pom.xml                                            |  5 ++
 .../org/apache/tomcat/jakartaee/Migration.java     |  7 +-
 .../tomcat/jakartaee/NonClosingInputStream.java    | 84 ----------------------
 .../tomcat/jakartaee/NonClosingOutputStream.java   | 60 ----------------
 4 files changed, 10 insertions(+), 146 deletions(-)

diff --git a/pom.xml b/pom.xml
index cf7f18b..ab74cfe 100644
--- a/pom.xml
+++ b/pom.xml
@@ -71,6 +71,11 @@
       <artifactId>bcel</artifactId>
       <version>6.4.1</version>
     </dependency>
+    <dependency>
+      <groupId>commons-io</groupId>
+      <artifactId>commons-io</artifactId>
+      <version>2.6</version>
+    </dependency>
   </dependencies>
 
   <build>
diff --git a/src/main/java/org/apache/tomcat/jakartaee/Migration.java 
b/src/main/java/org/apache/tomcat/jakartaee/Migration.java
index 734ebd8..5d8fdf1 100644
--- a/src/main/java/org/apache/tomcat/jakartaee/Migration.java
+++ b/src/main/java/org/apache/tomcat/jakartaee/Migration.java
@@ -36,6 +36,9 @@ import java.util.jar.Manifest;
 import java.util.logging.Level;
 import java.util.logging.Logger;
 
+import org.apache.commons.io.input.CloseShieldInputStream;
+import org.apache.commons.io.output.CloseShieldOutputStream;
+
 public class Migration {
 
     private static final Logger logger = 
Logger.getLogger(Migration.class.getCanonicalName());
@@ -131,8 +134,8 @@ public class Migration {
 
     private boolean migrateArchive(InputStream src, OutputStream dest) throws 
IOException {
         boolean result = true;
-        try (JarInputStream jarIs = new JarInputStream(new 
NonClosingInputStream(src));
-                JarOutputStream jarOs = new JarOutputStream(new 
NonClosingOutputStream(dest))) {
+        try (JarInputStream jarIs = new JarInputStream(new 
CloseShieldInputStream(src));
+                JarOutputStream jarOs = new JarOutputStream(new 
CloseShieldOutputStream(dest))) {
             Manifest manifest = jarIs.getManifest();
             if (manifest != null) {
                 // Make a safe copy to leave original manifest untouched.
diff --git 
a/src/main/java/org/apache/tomcat/jakartaee/NonClosingInputStream.java 
b/src/main/java/org/apache/tomcat/jakartaee/NonClosingInputStream.java
deleted file mode 100644
index 53f883c..0000000
--- a/src/main/java/org/apache/tomcat/jakartaee/NonClosingInputStream.java
+++ /dev/null
@@ -1,84 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.tomcat.jakartaee;
-
-import java.io.IOException;
-import java.io.InputStream;
-
-public class NonClosingInputStream extends InputStream {
-
-    private InputStream wrapped;
-
-
-    public NonClosingInputStream(InputStream wrapped) {
-        this.wrapped = wrapped;
-    }
-
-
-    @Override
-    public int read() throws IOException {
-        return wrapped.read();
-    }
-
-
-    @Override
-    public int read(byte[] b) throws IOException {
-        return wrapped.read(b);
-    }
-
-
-    @Override
-    public int read(byte[] b, int off, int len) throws IOException {
-        return wrapped.read(b, off, len);
-    }
-
-
-    @Override
-    public long skip(long n) throws IOException {
-        return wrapped.skip(n);
-    }
-
-
-    @Override
-    public int available() throws IOException {
-        return wrapped.available();
-    }
-
-
-    @Override
-    public void close() throws IOException {
-        // NO-OP
-    }
-
-
-    @Override
-    public synchronized void mark(int readlimit) {
-        wrapped.mark(readlimit);
-    }
-
-
-    @Override
-    public synchronized void reset() throws IOException {
-        wrapped.reset();
-    }
-
-
-    @Override
-    public boolean markSupported() {
-        return wrapped.markSupported();
-    }
-}
diff --git 
a/src/main/java/org/apache/tomcat/jakartaee/NonClosingOutputStream.java 
b/src/main/java/org/apache/tomcat/jakartaee/NonClosingOutputStream.java
deleted file mode 100644
index b4ee198..0000000
--- a/src/main/java/org/apache/tomcat/jakartaee/NonClosingOutputStream.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.tomcat.jakartaee;
-
-import java.io.IOException;
-import java.io.OutputStream;
-
-public class NonClosingOutputStream extends OutputStream {
-
-    private OutputStream wrapped;
-
-
-    public NonClosingOutputStream(OutputStream wrapped) {
-        this.wrapped = wrapped;
-    }
-
-
-    @Override
-    public void write(int b) throws IOException {
-        wrapped.write(b);
-    }
-
-
-    @Override
-    public void write(byte[] b) throws IOException {
-        wrapped.write(b);
-    }
-
-
-    @Override
-    public void write(byte[] b, int off, int len) throws IOException {
-        wrapped.write(b, off, len);
-    }
-
-
-    @Override
-    public void flush() throws IOException {
-        wrapped.flush();
-    }
-
-
-    @Override
-    public void close() throws IOException {
-        // NO-OP
-    }
-}


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to