Author: markt
Date: Thu Jan 7 09:31:50 2016
New Revision: 1723493
URL: http://svn.apache.org/viewvc?rev=1723493&view=rev
Log:
Use java.nio.file.Files where possible
Modified:
tomcat/trunk/java/org/apache/catalina/manager/host/HostManagerServlet.java
tomcat/trunk/java/org/apache/catalina/servlets/CGIServlet.java
tomcat/trunk/java/org/apache/catalina/startup/HostConfig.java
tomcat/trunk/java/org/apache/catalina/webresources/DirResourceSet.java
Modified:
tomcat/trunk/java/org/apache/catalina/manager/host/HostManagerServlet.java
URL:
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/manager/host/HostManagerServlet.java?rev=1723493&r1=1723492&r2=1723493&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/catalina/manager/host/HostManagerServlet.java
(original)
+++ tomcat/trunk/java/org/apache/catalina/manager/host/HostManagerServlet.java
Thu Jan 7 09:31:50 2016
@@ -17,11 +17,11 @@
package org.apache.catalina.manager.host;
import java.io.File;
-import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
-import java.io.OutputStream;
import java.io.PrintWriter;
+import java.nio.file.Files;
+import java.nio.file.Path;
import java.util.StringTokenizer;
import javax.servlet.ServletException;
@@ -39,7 +39,6 @@ import org.apache.catalina.Wrapper;
import org.apache.catalina.core.ContainerBase;
import org.apache.catalina.core.StandardHost;
import org.apache.catalina.startup.HostConfig;
-import org.apache.catalina.util.IOTools;
import org.apache.tomcat.util.ExceptionUtils;
import org.apache.tomcat.util.res.StringManager;
@@ -383,11 +382,9 @@ public class HostManagerServlet
"hostManagerServlet.configBaseCreateFail", name));
return;
}
- try (InputStream is =
getServletContext().getResourceAsStream("/manager.xml");
- OutputStream os = new FileOutputStream(
- new File(configBaseFile, "manager.xml"))) {
- byte buffer[] = new byte[512];
- IOTools.flow(is, os, buffer);
+ try (InputStream is =
getServletContext().getResourceAsStream("/manager.xml")) {
+ Path dest = (new File(configBaseFile, "manager.xml")).toPath();
+ Files.copy(is, dest);
} catch (IOException e) {
writer.println(smClient.getString("hostManagerServlet.managerXml"));
return;
Modified: tomcat/trunk/java/org/apache/catalina/servlets/CGIServlet.java
URL:
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/servlets/CGIServlet.java?rev=1723493&r1=1723492&r2=1723493&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/catalina/servlets/CGIServlet.java (original)
+++ tomcat/trunk/java/org/apache/catalina/servlets/CGIServlet.java Thu Jan 7
09:31:50 2016
@@ -21,13 +21,13 @@ package org.apache.catalina.servlets;
import java.io.BufferedOutputStream;
import java.io.BufferedReader;
import java.io.File;
-import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;
+import java.nio.file.Files;
import java.util.ArrayList;
import java.util.Date;
import java.util.Enumeration;
@@ -1166,9 +1166,7 @@ public final class CGIServlet extends Ht
}
// create directories
- String dirPath = destPath.toString().substring(
- 0,destPath.toString().lastIndexOf('/'));
- File dir = new File(dirPath);
+ File dir = f.getParentFile();
if (!dir.mkdirs() && !dir.isDirectory()) {
if (debug >= 2) {
log("expandCGIScript: failed to create directories for '" +
@@ -1188,19 +1186,13 @@ public final class CGIServlet extends Ht
if (!f.createNewFile()) {
return;
}
- FileOutputStream fos = new FileOutputStream(f);
try {
- // copy data
- IOTools.flow(is, fos);
+ Files.copy(is, f.toPath());
} finally {
- try {
- is.close();
- } catch (IOException e) {
- log("Could not close is.", e);
- }
- fos.close();
+ is.close();
}
+
if (debug >= 2) {
log("expandCGIScript: expanded '" + srcPath + "' to '"
+ destPath + "'");
}
Modified: tomcat/trunk/java/org/apache/catalina/startup/HostConfig.java
URL:
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/startup/HostConfig.java?rev=1723493&r1=1723492&r2=1723493&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/catalina/startup/HostConfig.java (original)
+++ tomcat/trunk/java/org/apache/catalina/startup/HostConfig.java Thu Jan 7
09:31:50 2016
@@ -22,8 +22,8 @@ import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
-import java.io.OutputStream;
import java.net.URL;
+import java.nio.file.Files;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;
@@ -56,7 +56,6 @@ import org.apache.catalina.Manager;
import org.apache.catalina.core.StandardContext;
import org.apache.catalina.core.StandardHost;
import org.apache.catalina.util.ContextName;
-import org.apache.catalina.util.IOTools;
import org.apache.juli.logging.Log;
import org.apache.juli.logging.LogFactory;
import org.apache.tomcat.util.ExceptionUtils;
@@ -1066,11 +1065,7 @@ public class HostConfig implements Lifec
}
if (copyThisXml) {
- try (InputStream is = new FileInputStream(xml);
- OutputStream os = new FileOutputStream(xmlCopy)) {
- IOTools.flow(is, os);
- // Don't catch IOE - let the outer try/catch handle it
- }
+ Files.copy(xml.toPath(), xmlCopy.toPath());
context.setConfigFile(xmlCopy.toURI().toURL());
} else {
context.setConfigFile(xml.toURI().toURL());
Modified: tomcat/trunk/java/org/apache/catalina/webresources/DirResourceSet.java
URL:
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/webresources/DirResourceSet.java?rev=1723493&r1=1723492&r2=1723493&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/catalina/webresources/DirResourceSet.java
(original)
+++ tomcat/trunk/java/org/apache/catalina/webresources/DirResourceSet.java Thu
Jan 7 09:31:50 2016
@@ -18,9 +18,10 @@ package org.apache.catalina.webresources
import java.io.File;
import java.io.FileInputStream;
-import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
+import java.nio.file.Files;
+import java.nio.file.StandardCopyOption;
import java.util.Set;
import java.util.jar.Manifest;
@@ -28,7 +29,6 @@ import org.apache.catalina.LifecycleExce
import org.apache.catalina.WebResource;
import org.apache.catalina.WebResourceRoot;
import org.apache.catalina.WebResourceRoot.ResourceSetType;
-import org.apache.catalina.util.IOTools;
import org.apache.catalina.util.ResourceSet;
import org.apache.juli.logging.Log;
import org.apache.juli.logging.LogFactory;
@@ -228,18 +228,16 @@ public class DirResourceSet extends Abst
return false;
}
- if (dest.exists()) {
+ if (dest.exists() && !overwrite) {
+ return false;
+ }
+
+ try {
if (overwrite) {
- if (!dest.delete()) {
- return false;
- }
+ Files.copy(is, dest.toPath(),
StandardCopyOption.REPLACE_EXISTING);
} else {
- return false;
+ Files.copy(is, dest.toPath());
}
- }
-
- try (FileOutputStream fos = new FileOutputStream(dest)) {
- IOTools.flow(is, fos);
} catch (IOException ioe) {
return false;
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]