From f9fab87480c4ac4cccd8960f52dac4676b2da65a Mon Sep 17 00:00:00 2001 From: Sebastian Sdorra Date: Fri, 10 Oct 2014 20:32:59 +0200 Subject: [PATCH] use java7 auto close --- .../resources/AbstractResourceServlet.java | 20 +++++++------------ .../sonia/scm/resources/DefaultResource.java | 9 +-------- 2 files changed, 8 insertions(+), 21 deletions(-) diff --git a/scm-webapp/src/main/java/sonia/scm/resources/AbstractResourceServlet.java b/scm-webapp/src/main/java/sonia/scm/resources/AbstractResourceServlet.java index a495456596..74a6291a98 100644 --- a/scm-webapp/src/main/java/sonia/scm/resources/AbstractResourceServlet.java +++ b/scm-webapp/src/main/java/sonia/scm/resources/AbstractResourceServlet.java @@ -30,6 +30,7 @@ */ + package sonia.scm.resources; //~--- non-JDK imports -------------------------------------------------------- @@ -103,13 +104,13 @@ public abstract class AbstractResourceServlet extends HttpServlet */ @Override protected void doGet(HttpServletRequest request, HttpServletResponse response) - throws ServletException, IOException + throws ServletException, IOException { String uri = HttpUtil.getStrippedURI(request); ResourceType type = getType(); String nameSeparator = HttpUtil.SEPARATOR_PATH.concat( - type.getExtension()).concat( - HttpUtil.SEPARATOR_PATH); + type.getExtension()).concat( + HttpUtil.SEPARATOR_PATH); int index = uri.indexOf(nameSeparator); if (index > 0) @@ -147,25 +148,18 @@ public abstract class AbstractResourceServlet extends HttpServlet * @throws IOException */ private void printResource(HttpServletResponse response, Resource resource) - throws IOException + throws IOException { response.setContentType(resource.getType().getContentType()); - OutputStream output = null; - - try + try (OutputStream output = response.getOutputStream()) { - output = response.getOutputStream(); resource.copyTo(output); } - finally - { - IOUtil.close(output); - } } //~--- fields --------------------------------------------------------------- /** Field description */ - private ResourceManager resourceManager; + private final ResourceManager resourceManager; } diff --git a/scm-webapp/src/main/java/sonia/scm/resources/DefaultResource.java b/scm-webapp/src/main/java/sonia/scm/resources/DefaultResource.java index 02b3a4db50..d17b79cfd2 100644 --- a/scm-webapp/src/main/java/sonia/scm/resources/DefaultResource.java +++ b/scm-webapp/src/main/java/sonia/scm/resources/DefaultResource.java @@ -37,7 +37,6 @@ package sonia.scm.resources; import sonia.scm.plugin.PluginLoader; import sonia.scm.util.ChecksumUtil; -import sonia.scm.util.IOUtil; //~--- JDK imports ------------------------------------------------------------ @@ -72,19 +71,13 @@ public final class DefaultResource extends AbstractResource super(pluginLoader, resources, resourceHandlers); this.type = type; - ByteArrayOutputStream baos = new ByteArrayOutputStream(); - - try + try (ByteArrayOutputStream baos = new ByteArrayOutputStream()) { appendResources(baos); this.content = baos.toByteArray(); this.name = ChecksumUtil.createChecksum(this.content).concat(".").concat( type.getExtension()); } - finally - { - IOUtil.close(baos); - } } //~--- methods --------------------------------------------------------------