[webbeans-commits] Webbeans SVN: r1693 - in tck/trunk/impl/src/main/java/org/jboss/jsr299/tck: impl/packaging and 3 other directories.
webbeans-commits at lists.jboss.org
webbeans-commits at lists.jboss.org
Tue Feb 24 17:52:15 EST 2009
Author: pete.muir at jboss.org
Date: 2009-02-24 17:52:15 -0500 (Tue, 24 Feb 2009)
New Revision: 1693
Modified:
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/AbstractDeclarativeTest.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/impl/packaging/ArtifactDescriptor.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/impl/packaging/ResourceDescriptor.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/impl/packaging/ear/EarArtifactDescriptor.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/impl/packaging/jsr299/TCKArtifactDescriptor.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/impl/util/Files.java
Log:
close streams
Modified: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/AbstractDeclarativeTest.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/AbstractDeclarativeTest.java 2009-02-24 21:59:04 UTC (rev 1692)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/AbstractDeclarativeTest.java 2009-02-24 22:52:15 UTC (rev 1693)
@@ -1,6 +1,7 @@
package org.jboss.jsr299.tck;
import java.io.IOException;
+import java.io.InputStream;
import java.lang.reflect.Method;
import java.util.Arrays;
import java.util.Set;
@@ -83,7 +84,19 @@
{
if (isDeployToContainerNeeded())
{
- getCurrentConfiguration().getContainers().deploy(artifact.getJarAsStream(), artifact.getDefaultName());
+ InputStream jar = null;
+ try
+ {
+ jar = artifact.getJarAsStream();
+ getCurrentConfiguration().getContainers().deploy(jar, artifact.getDefaultName());
+ }
+ finally
+ {
+ if (jar != null)
+ {
+ jar.close();
+ }
+ }
}
else if (artifact != null && artifact.isUnit())
{
Modified: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/impl/packaging/ArtifactDescriptor.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/impl/packaging/ArtifactDescriptor.java 2009-02-24 21:59:04 UTC (rev 1692)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/impl/packaging/ArtifactDescriptor.java 2009-02-24 22:52:15 UTC (rev 1693)
@@ -240,11 +240,23 @@
public URL getJar() throws IOException
{
- InputStream is = getJarAsStream();
- File file = File.createTempFile(ArtifactDescriptor.class.getCanonicalName(), ".jar");
- file.deleteOnExit();
- copy(is, file);
- return file.toURI().toURL();
+ InputStream is = null;
+ try
+ {
+ is = getJarAsStream();
+ File file = File.createTempFile(ArtifactDescriptor.class.getCanonicalName(), ".jar");
+ file.deleteOnExit();
+ Files.copy(is, file);
+ is.close();
+ return file.toURI().toURL();
+ }
+ finally
+ {
+ if (is != null)
+ {
+ is.close();
+ }
+ }
}
public File getExplodedJar() throws IOException
@@ -309,7 +321,7 @@
File file = new File(directory, fileName);
file.createNewFile();
file.deleteOnExit();
- copy(resourceDescriptor.getSource().openStream(), file);
+ Files.copy(resourceDescriptor.getSource().openStream(), file);
}
private static void copyClass(String className, File root) throws IOException
@@ -321,7 +333,7 @@
File classFile = new File(packageDirectory, classFileName);
classFile.createNewFile();
classFile.deleteOnExit();
- copy(loadResourceAsStream(classFilePathName), classFile);
+ Files.copy(loadResourceAsStream(classFilePathName), classFile);
}
private static File makeDirectoryStructure(File root, String directoryName)
@@ -342,13 +354,27 @@
public void writeArtifactToDisk(String outputDirectory, String fileName) throws IOException
{
+ OutputStream os = null;
+ InputStream jar = null;
+ try
+ {
File file = new File(outputDirectory, fileName);
file.createNewFile();
- OutputStream os = new BufferedOutputStream(new FileOutputStream(file));
- InputStream jar = getJarAsStream();
+ os = new BufferedOutputStream(new FileOutputStream(file));
+ jar = getJarAsStream();
Files.copy(jar, os);
- jar.close();
- os.close();
+ }
+ finally
+ {
+ if (os != null)
+ {
+ os.close();
+ }
+ if (jar != null)
+ {
+ jar.close();
+ }
+ }
}
public String getDefaultName()
@@ -361,25 +387,6 @@
return className.replace('.', '/') + ".class";
}
- private static void copy(InputStream inputStream, File file) throws IOException
- {
- OutputStream os = new FileOutputStream(file);
- try
- {
- byte[] buf = new byte[1024];
- int i = 0;
- while ((i = inputStream.read(buf)) != -1)
- {
- os.write(buf, 0, i);
- }
- }
- finally
- {
- os.close();
- }
-
- }
-
public Set<Class<?>> getClasses()
{
return classes;
Modified: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/impl/packaging/ResourceDescriptor.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/impl/packaging/ResourceDescriptor.java 2009-02-24 21:59:04 UTC (rev 1692)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/impl/packaging/ResourceDescriptor.java 2009-02-24 22:52:15 UTC (rev 1693)
@@ -3,12 +3,12 @@
import static org.jboss.jsr299.tck.impl.util.Reflections.loadResource;
import java.io.File;
-import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
-import java.io.OutputStream;
import java.net.URL;
+import org.jboss.jsr299.tck.impl.util.Files;
+
public class ResourceDescriptor
{
@@ -20,7 +20,7 @@
this.name = name;
File file = File.createTempFile(ResourceDescriptor.class.getName(), null);
file.deleteOnExit();
- copy(source, file);
+ Files.copy(source, file);
this.source = file.toURI().toURL();
}
@@ -80,23 +80,4 @@
return name + " (" + source.toString() + ")";
}
- private static void copy(InputStream inputStream, File file) throws IOException
- {
- OutputStream os = new FileOutputStream(file);
- try
- {
- byte[] buf = new byte[1024];
- int i = 0;
- while ((i = inputStream.read(buf)) != -1)
- {
- os.write(buf, 0, i);
- }
- }
- finally
- {
- os.close();
- }
-
- }
-
}
Modified: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/impl/packaging/ear/EarArtifactDescriptor.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/impl/packaging/ear/EarArtifactDescriptor.java 2009-02-24 21:59:04 UTC (rev 1692)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/impl/packaging/ear/EarArtifactDescriptor.java 2009-02-24 22:52:15 UTC (rev 1693)
@@ -42,15 +42,30 @@
}
};
+ InputStream applicationXml = null;
try
{
- getResources().add(new ResourceDescriptor(APPLICATION_XML_DESTINATION, getApplicationXml(declaringClass)));
+ applicationXml = getApplicationXml(declaringClass);
+ getResources().add(new ResourceDescriptor(APPLICATION_XML_DESTINATION, applicationXml));
}
catch (IOException e)
{
- log.warn("Error generating ear");
+ log.warn("Error generating ear", e);
}
-
+ finally
+ {
+ if (applicationXml != null)
+ {
+ try
+ {
+ applicationXml.close();
+ }
+ catch (IOException e1)
+ {
+ log.error("Error generating ear", e1);
+ }
+ }
+ }
}
@Override
@@ -110,24 +125,31 @@
private static InputStream getApplicationXml(Class<?> declaringClass) throws IOException
{
ByteArrayOutputStream os = new ByteArrayOutputStream();
- Writer writer = new PrintWriter(os);
- writer.write("<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n");
- writer.write("<application xmlns=\"http://java.sun.com/xml/ns/javaee\" \n" +
- "\t\txmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" \n" +
- "\t\txsi:schemaLocation=\"http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/application_5.xsd\" \n" +
- "\t\tversion=\"5\">\n\n");
- writer.write("\t<display-name>JSR-99 TCK: " + declaringClass.getName() + "</display-name>\n\n");
- writer.write("\t<module>\n" +
- "\t\t<web>\n" +
- "\t\t\t<web-uri>" + declaringClass.getName() +".war</web-uri>\n" +
- "\t\t\t<context-root>/" + declaringClass.getName() + "</context-root>\n" +
- "\t\t</web>\n" +
- "\t</module>\n\n");
- writer.write("\t<module>\n" +
- "\t\t<ejb>" + declaringClass.getName() +".jar</ejb>\n" +
- "\t</module>\n\n");
- writer.write("</application>\n");
- writer.flush();
- return new ByteArrayInputStream(os.toByteArray());
+ try
+ {
+ Writer writer = new PrintWriter(os);
+ writer.write("<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n");
+ writer.write("<application xmlns=\"http://java.sun.com/xml/ns/javaee\" \n" +
+ "\t\txmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" \n" +
+ "\t\txsi:schemaLocation=\"http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/application_5.xsd\" \n" +
+ "\t\tversion=\"5\">\n\n");
+ writer.write("\t<display-name>JSR-99 TCK: " + declaringClass.getName() + "</display-name>\n\n");
+ writer.write("\t<module>\n" +
+ "\t\t<web>\n" +
+ "\t\t\t<web-uri>" + declaringClass.getName() +".war</web-uri>\n" +
+ "\t\t\t<context-root>/" + declaringClass.getName() + "</context-root>\n" +
+ "\t\t</web>\n" +
+ "\t</module>\n\n");
+ writer.write("\t<module>\n" +
+ "\t\t<ejb>" + declaringClass.getName() +".jar</ejb>\n" +
+ "\t</module>\n\n");
+ writer.write("</application>\n");
+ writer.flush();
+ return new ByteArrayInputStream(os.toByteArray());
+ }
+ finally
+ {
+ os.close();
+ }
}
}
Modified: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/impl/packaging/jsr299/TCKArtifactDescriptor.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/impl/packaging/jsr299/TCKArtifactDescriptor.java 2009-02-24 21:59:04 UTC (rev 1692)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/impl/packaging/jsr299/TCKArtifactDescriptor.java 2009-02-24 22:52:15 UTC (rev 1693)
@@ -50,24 +50,47 @@
getLibraries().add(new ResourceDescriptor("testng.jar", "/lib/testng-jdk15.jar"));
getLibraries().add(new ResourceDescriptor("jsr-299-tck-api.jar", "/lib/jsr299-tck-api.jar"));
getLibraries().add(getTckSupportJar());
+ InputStream deploymentProperties = null;
try
{
- getResources().add(new ResourceDescriptor(getClassesRoot() + DeploymentProperties.RESOURCE_BUNDLE, getDeploymentProperties(declaringClass)));
+ deploymentProperties = getDeploymentProperties(declaringClass);
+ getResources().add(new ResourceDescriptor(getClassesRoot() + DeploymentProperties.RESOURCE_BUNDLE, deploymentProperties));
}
catch (IOException e)
{
log.warn("Error generating deployment properties", e);
}
+ finally
+ {
+ if (deploymentProperties != null)
+ {
+ try
+ {
+ deploymentProperties.close();
+ }
+ catch (IOException e)
+ {
+ log.error("Error generating deployment properties", e);
+ }
+ }
+ }
}
}
private static InputStream getDeploymentProperties(Class<?> declaringClass) throws IOException
{
ByteArrayOutputStream os = new ByteArrayOutputStream();
- Writer writer = new PrintWriter(os);
- writer.write("className=" + declaringClass.getName());
- writer.flush();
- return new ByteArrayInputStream(os.toByteArray());
+ try
+ {
+ Writer writer = new PrintWriter(os);
+ writer.write("className=" + declaringClass.getName());
+ writer.flush();
+ return new ByteArrayInputStream(os.toByteArray());
+ }
+ finally
+ {
+ os.close();
+ }
}
public boolean isUnit()
Modified: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/impl/util/Files.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/impl/util/Files.java 2009-02-24 21:59:04 UTC (rev 1692)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/impl/util/Files.java 2009-02-24 22:52:15 UTC (rev 1693)
@@ -1,5 +1,7 @@
package org.jboss.jsr299.tck.impl.util;
+import java.io.File;
+import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
@@ -16,5 +18,19 @@
destination.write(readBuffer, 0, bytesIn);
}
}
+
+ public static void copy(InputStream inputStream, File file) throws IOException
+ {
+ OutputStream os = new FileOutputStream(file);
+ try
+ {
+ copy(inputStream, os);
+ }
+ finally
+ {
+ os.close();
+ }
+ }
+
}
More information about the weld-commits
mailing list