You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cxf.apache.org by co...@apache.org on 2016/04/14 15:18:36 UTC
cxf git commit: Close some streams
Repository: cxf
Updated Branches:
refs/heads/master 0abb19515 -> 1963e01b4
Close some streams
Project: http://git-wip-us.apache.org/repos/asf/cxf/repo
Commit: http://git-wip-us.apache.org/repos/asf/cxf/commit/1963e01b
Tree: http://git-wip-us.apache.org/repos/asf/cxf/tree/1963e01b
Diff: http://git-wip-us.apache.org/repos/asf/cxf/diff/1963e01b
Branch: refs/heads/master
Commit: 1963e01b4364fd43de43b151338dff63314c8d8d
Parents: 0abb195
Author: Colm O hEigeartaigh <co...@apache.org>
Authored: Thu Apr 14 14:18:08 2016 +0100
Committer: Colm O hEigeartaigh <co...@apache.org>
Committed: Thu Apr 14 14:18:31 2016 +0100
----------------------------------------------------------------------
.../java/org/apache/cxf/helpers/IOUtils.java | 53 ++++++++++----------
.../transport/servlet/AbstractHTTPServlet.java | 3 +-
...ingConfiguredAutoRewriteSoapAddressTest.java | 5 +-
.../provider/AbstractSourcePayloadProvider.java | 12 ++---
.../systest/servlet/AbstractServletTest.java | 1 +
5 files changed, 39 insertions(+), 35 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cxf/blob/1963e01b/core/src/main/java/org/apache/cxf/helpers/IOUtils.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/cxf/helpers/IOUtils.java b/core/src/main/java/org/apache/cxf/helpers/IOUtils.java
index 82c5535..7c3b828 100644
--- a/core/src/main/java/org/apache/cxf/helpers/IOUtils.java
+++ b/core/src/main/java/org/apache/cxf/helpers/IOUtils.java
@@ -264,15 +264,8 @@ public final class IOUtils {
if (Transferable.class.isAssignableFrom(inputStream.getClass())) {
((Transferable)inputStream).transferTo(destinationFile);
} else {
- FileOutputStream fout = new FileOutputStream(destinationFile);
- try {
+ try (FileOutputStream fout = new FileOutputStream(destinationFile)) {
copyAndCloseInput(inputStream, fout);
- } finally {
- try {
- fout.close();
- } catch (IOException ex) {
- //ignore
- }
}
}
}
@@ -308,17 +301,20 @@ public final class IOUtils {
StringBuilder buf = new StringBuilder();
final char[] buffer = new char[bufSize];
- int n = 0;
- n = input.read(buffer);
- while (-1 != n) {
- if (n == 0) {
- throw new IOException("0 bytes read in violation of InputStream.read(byte[])");
- }
- buf.append(new String(buffer, 0, n));
+ try {
+ int n = 0;
n = input.read(buffer);
+ while (-1 != n) {
+ if (n == 0) {
+ throw new IOException("0 bytes read in violation of InputStream.read(byte[])");
+ }
+ buf.append(new String(buffer, 0, n));
+ n = input.read(buffer);
+ }
+ return buf.toString();
+ } finally {
+ input.close();
}
- input.close();
- return buf.toString();
}
public static String readStringFromStream(InputStream in)
@@ -326,13 +322,14 @@ public final class IOUtils {
StringBuilder sb = new StringBuilder(1024);
- for (int i = in.read(); i != -1; i = in.read()) {
- sb.append((char) i);
+ try {
+ for (int i = in.read(); i != -1; i = in.read()) {
+ sb.append((char) i);
+ }
+ return sb.toString();
+ } finally {
+ in.close();
}
-
- in.close();
-
- return sb.toString();
}
/**
@@ -407,9 +404,11 @@ public final class IOUtils {
if (i < DEFAULT_BUFFER_SIZE) {
i = DEFAULT_BUFFER_SIZE;
}
- ByteArrayOutputStream bos = new ByteArrayOutputStream(i);
- copy(in, bos);
- in.close();
- return bos.toByteArray();
+ try (ByteArrayOutputStream bos = new ByteArrayOutputStream(i)) {
+ copy(in, bos);
+ return bos.toByteArray();
+ } finally {
+ in.close();
+ }
}
}
http://git-wip-us.apache.org/repos/asf/cxf/blob/1963e01b/rt/transports/http/src/main/java/org/apache/cxf/transport/servlet/AbstractHTTPServlet.java
----------------------------------------------------------------------
diff --git a/rt/transports/http/src/main/java/org/apache/cxf/transport/servlet/AbstractHTTPServlet.java b/rt/transports/http/src/main/java/org/apache/cxf/transport/servlet/AbstractHTTPServlet.java
index 2b78fe6..d013bdf 100644
--- a/rt/transports/http/src/main/java/org/apache/cxf/transport/servlet/AbstractHTTPServlet.java
+++ b/rt/transports/http/src/main/java/org/apache/cxf/transport/servlet/AbstractHTTPServlet.java
@@ -136,6 +136,7 @@ public abstract class AbstractHTTPServlet extends HttpServlet implements Filter
for (String name : props.stringPropertyNames()) {
staticContentTypes.put(name, props.getProperty(name));
}
+ is.close();
} catch (IOException ex) {
String message = new org.apache.cxf.common.i18n.Message("STATIC_RESOURCES_MAP_LOAD_FAILURE",
BUNDLE).toString();
@@ -353,7 +354,7 @@ public abstract class AbstractHTTPServlet extends HttpServlet implements Filter
response.setHeader("Cache-Control", cacheControl.trim());
}
ServletOutputStream os = response.getOutputStream();
- IOUtils.copy(is, os);
+ IOUtils.copyAndCloseInput(is, os);
os.flush();
} catch (IOException ex) {
throw new ServletException("Static resource " + pathInfo
http://git-wip-us.apache.org/repos/asf/cxf/blob/1963e01b/systests/jaxws/src/test/java/org/apache/cxf/systest/handlers/AbstractSpringConfiguredAutoRewriteSoapAddressTest.java
----------------------------------------------------------------------
diff --git a/systests/jaxws/src/test/java/org/apache/cxf/systest/handlers/AbstractSpringConfiguredAutoRewriteSoapAddressTest.java b/systests/jaxws/src/test/java/org/apache/cxf/systest/handlers/AbstractSpringConfiguredAutoRewriteSoapAddressTest.java
index 5e120ff..142d9d2 100644
--- a/systests/jaxws/src/test/java/org/apache/cxf/systest/handlers/AbstractSpringConfiguredAutoRewriteSoapAddressTest.java
+++ b/systests/jaxws/src/test/java/org/apache/cxf/systest/handlers/AbstractSpringConfiguredAutoRewriteSoapAddressTest.java
@@ -19,6 +19,7 @@
package org.apache.cxf.systest.handlers;
+import java.io.InputStream;
import java.net.URL;
import java.net.URLConnection;
import java.util.LinkedList;
@@ -39,7 +40,9 @@ public abstract class AbstractSpringConfiguredAutoRewriteSoapAddressTest extends
private Document retrieveWsdlDocument(String hostname, String port) throws Exception {
URL wsdlUrlLocalhost = new URL("http://" + hostname + ":" + port + "/SpringEndpoint?wsdl");
URLConnection urlConnection = wsdlUrlLocalhost.openConnection();
- return StaxUtils.read(urlConnection.getInputStream());
+ try (InputStream input = urlConnection.getInputStream()) {
+ return StaxUtils.read(input);
+ }
}
protected List<String> findAllServiceUrlsFromWsdl(String hostname, String port) throws Exception {
http://git-wip-us.apache.org/repos/asf/cxf/blob/1963e01b/systests/jaxws/src/test/java/org/apache/cxf/systest/provider/AbstractSourcePayloadProvider.java
----------------------------------------------------------------------
diff --git a/systests/jaxws/src/test/java/org/apache/cxf/systest/provider/AbstractSourcePayloadProvider.java b/systests/jaxws/src/test/java/org/apache/cxf/systest/provider/AbstractSourcePayloadProvider.java
index d6842d0..3e0bd25 100644
--- a/systests/jaxws/src/test/java/org/apache/cxf/systest/provider/AbstractSourcePayloadProvider.java
+++ b/systests/jaxws/src/test/java/org/apache/cxf/systest/provider/AbstractSourcePayloadProvider.java
@@ -122,12 +122,12 @@ public abstract class AbstractSourcePayloadProvider implements SourceProvider {
Transformer transformer = transformerFactory.newTransformer();
transformer.setOutputProperty(OutputKeys.OMIT_XML_DECLARATION, "yes");
transformer.setOutputProperty(OutputKeys.METHOD, "xml");
- Writer out = new StringWriter();
- StreamResult streamResult = new StreamResult();
- streamResult.setWriter(out);
- transformer.transform(s, streamResult);
- return streamResult.getWriter().toString();
-
+ try (Writer out = new StringWriter()) {
+ StreamResult streamResult = new StreamResult();
+ streamResult.setWriter(out);
+ transformer.transform(s, streamResult);
+ return streamResult.getWriter().toString();
+ }
} catch (TransformerException te) {
if ("javax.xml.transform.stax.StAXSource".equals(s.getClass().getName())) {
//on java6, we will get this class if "stax" is configured
http://git-wip-us.apache.org/repos/asf/cxf/blob/1963e01b/systests/transports/src/test/java/org/apache/cxf/systest/servlet/AbstractServletTest.java
----------------------------------------------------------------------
diff --git a/systests/transports/src/test/java/org/apache/cxf/systest/servlet/AbstractServletTest.java b/systests/transports/src/test/java/org/apache/cxf/systest/servlet/AbstractServletTest.java
index 1ecde66..eaa39fa 100644
--- a/systests/transports/src/test/java/org/apache/cxf/systest/servlet/AbstractServletTest.java
+++ b/systests/transports/src/test/java/org/apache/cxf/systest/servlet/AbstractServletTest.java
@@ -52,6 +52,7 @@ public abstract class AbstractServletTest extends AbstractCXFTest {
}
HttpUnitOptions.setExceptionsThrownOnErrorStatus(true);
+ configurationStream.close();
}
@After
public void tearDown() throws Exception {