Return-Path: Delivered-To: apmail-geronimo-scm-archive@www.apache.org Received: (qmail 83046 invoked from network); 26 May 2006 00:12:12 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur.apache.org with SMTP; 26 May 2006 00:12:12 -0000 Received: (qmail 88503 invoked by uid 500); 26 May 2006 00:12:11 -0000 Delivered-To: apmail-geronimo-scm-archive@geronimo.apache.org Received: (qmail 88463 invoked by uid 500); 26 May 2006 00:12:11 -0000 Mailing-List: contact scm-help@geronimo.apache.org; run by ezmlm Precedence: bulk list-help: list-unsubscribe: List-Post: Reply-To: dev@geronimo.apache.org List-Id: Delivered-To: mailing list scm@geronimo.apache.org Received: (qmail 88450 invoked by uid 99); 26 May 2006 00:12:11 -0000 Received: from asf.osuosl.org (HELO asf.osuosl.org) (140.211.166.49) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 25 May 2006 17:12:11 -0700 X-ASF-Spam-Status: No, hits=-9.4 required=10.0 tests=ALL_TRUSTED,NO_REAL_NAME X-Spam-Check-By: apache.org Received-SPF: pass (asf.osuosl.org: local policy) Received: from [140.211.166.113] (HELO eris.apache.org) (140.211.166.113) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 25 May 2006 17:12:10 -0700 Received: by eris.apache.org (Postfix, from userid 65534) id 55AF51A983A; Thu, 25 May 2006 17:11:50 -0700 (PDT) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r409514 - /geronimo/branches/1.1/modules/system/src/java/org/apache/geronimo/system/repository/AbstractRepository.java Date: Fri, 26 May 2006 00:11:50 -0000 To: scm@geronimo.apache.org From: jsisson@apache.org X-Mailer: svnmailer-1.0.8 Message-Id: <20060526001150.55AF51A983A@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N Author: jsisson Date: Thu May 25 17:11:49 2006 New Revision: 409514 URL: http://svn.apache.org/viewvc?rev=409514&view=rev Log: GERONIMO-2035 - ensure inputstream is closed. Modified: geronimo/branches/1.1/modules/system/src/java/org/apache/geronimo/system/repository/AbstractRepository.java Modified: geronimo/branches/1.1/modules/system/src/java/org/apache/geronimo/system/repository/AbstractRepository.java URL: http://svn.apache.org/viewvc/geronimo/branches/1.1/modules/system/src/java/org/apache/geronimo/system/repository/AbstractRepository.java?rev=409514&r1=409513&r2=409514&view=diff ============================================================================== --- geronimo/branches/1.1/modules/system/src/java/org/apache/geronimo/system/repository/AbstractRepository.java (original) +++ geronimo/branches/1.1/modules/system/src/java/org/apache/geronimo/system/repository/AbstractRepository.java Thu May 25 17:11:49 2006 @@ -118,31 +118,41 @@ } ClassLoader depCL = new URLClassLoader(new URL[]{url}, ClassLoader.getSystemClassLoader()); InputStream is = depCL.getResourceAsStream("META-INF/geronimo-dependency.xml"); - if (is != null) { - InputSource in = new InputSource(is); - DocumentBuilderFactory dfactory = DocumentBuilderFactory.newInstance(); - dfactory.setNamespaceAware(true); - try { - Document doc = dfactory.newDocumentBuilder().parse(in); - Element root = doc.getDocumentElement(); - NodeList configs = root.getElementsByTagNameNS(NAMESPACE, "dependency"); - for (int i = 0; i < configs.getLength(); i++) { - Element dependencyElement = (Element) configs.item(i); - String groupId = getString(dependencyElement, "groupId"); - String artifactId = getString(dependencyElement, "artifactId"); - String version = getString(dependencyElement, "version"); - String type = getString(dependencyElement, "type"); - if (type == null) { - type = "jar"; + try { + if (is != null) { + InputSource in = new InputSource(is); + DocumentBuilderFactory dfactory = DocumentBuilderFactory.newInstance(); + dfactory.setNamespaceAware(true); + try { + Document doc = dfactory.newDocumentBuilder().parse(in); + Element root = doc.getDocumentElement(); + NodeList configs = root.getElementsByTagNameNS(NAMESPACE, "dependency"); + for (int i = 0; i < configs.getLength(); i++) { + Element dependencyElement = (Element) configs.item(i); + String groupId = getString(dependencyElement, "groupId"); + String artifactId = getString(dependencyElement, "artifactId"); + String version = getString(dependencyElement, "version"); + String type = getString(dependencyElement, "type"); + if (type == null) { + type = "jar"; + } + dependencies.add(new Artifact(groupId, artifactId, version, type)); } - dependencies.add(new Artifact(groupId, artifactId, version, type)); + } catch (IOException e) { + throw (IllegalStateException)new IllegalStateException("Unable to parse geronimo-dependency.xml file in " + url).initCause(e); + } catch (ParserConfigurationException e) { + throw (IllegalStateException)new IllegalStateException("Unable to parse geronimo-dependency.xml file in " + url).initCause(e); + } catch (SAXException e) { + throw (IllegalStateException)new IllegalStateException("Unable to parse geronimo-dependency.xml file in " + url).initCause(e); + } + } + } finally { + if (is != null) { + try { + is.close(); + } catch (IOException ignore) { + // ignore } - } catch (IOException e) { - throw (IllegalStateException)new IllegalStateException("Unable to parse geronimo-dependency.xml file in " + url).initCause(e); - } catch (ParserConfigurationException e) { - throw (IllegalStateException)new IllegalStateException("Unable to parse geronimo-dependency.xml file in " + url).initCause(e); - } catch (SAXException e) { - throw (IllegalStateException)new IllegalStateException("Unable to parse geronimo-dependency.xml file in " + url).initCause(e); } } return dependencies;