You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by rf...@apache.org on 2010/04/03 17:14:18 UTC

svn commit: r930529 - in /tuscany/maven-plugins/trunk/maven-eclipse-compiler/src/main/java/org/apache/tuscany/maven/compiler: ClassLoaderNameEnvironment.java osgi/BundleResolver.java

Author: rfeng
Date: Sat Apr  3 15:14:18 2010
New Revision: 930529

URL: http://svn.apache.org/viewvc?rev=930529&view=rev
Log:
One more place to close files

Modified:
    tuscany/maven-plugins/trunk/maven-eclipse-compiler/src/main/java/org/apache/tuscany/maven/compiler/ClassLoaderNameEnvironment.java
    tuscany/maven-plugins/trunk/maven-eclipse-compiler/src/main/java/org/apache/tuscany/maven/compiler/osgi/BundleResolver.java

Modified: tuscany/maven-plugins/trunk/maven-eclipse-compiler/src/main/java/org/apache/tuscany/maven/compiler/ClassLoaderNameEnvironment.java
URL: http://svn.apache.org/viewvc/tuscany/maven-plugins/trunk/maven-eclipse-compiler/src/main/java/org/apache/tuscany/maven/compiler/ClassLoaderNameEnvironment.java?rev=930529&r1=930528&r2=930529&view=diff
==============================================================================
--- tuscany/maven-plugins/trunk/maven-eclipse-compiler/src/main/java/org/apache/tuscany/maven/compiler/ClassLoaderNameEnvironment.java (original)
+++ tuscany/maven-plugins/trunk/maven-eclipse-compiler/src/main/java/org/apache/tuscany/maven/compiler/ClassLoaderNameEnvironment.java Sat Apr  3 15:14:18 2010
@@ -23,6 +23,7 @@ import java.io.ByteArrayOutputStream;
 import java.io.File;
 import java.io.IOException;
 import java.io.InputStream;
+import java.net.URL;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
@@ -39,7 +40,6 @@ import org.eclipse.jdt.internal.compiler
  * @version $Rev$ $Date$
  */
 class ClassLoaderNameEnvironment implements INameEnvironment {
-    private final static char fileSeparator = System.getProperty("file.separator").charAt(0);
     
     private ClassLoader classLoader;
     private List<String> sourceLocations;
@@ -108,7 +108,7 @@ class ClassLoaderNameEnvironment impleme
         if (sourceFile != null) {
             return sourceFile;
         }
-        String sourceName = className.replace('.', fileSeparator) + ".java";
+        String sourceName = className.replace('.', File.separatorChar) + ".java";
         sourceFile = sourceFileInSourceLocations(sourceName);
         sourceFiles.put(className, sourceFile);
         return sourceFile;
@@ -141,15 +141,8 @@ class ClassLoaderNameEnvironment impleme
             return false;
         }
         String resourceName = '/' + name.replace('.', '/') + ".class";
-        InputStream is = classLoader.getResourceAsStream(resourceName);
-        if (is == null) {
-            return true;
-        } else {
-            try {
-                is.close();
-            } catch (IOException e) {}
-            return false;
-        }
+        URL url = classLoader.getResource(resourceName);
+        return url == null;
     }
 
     /**
@@ -172,7 +165,7 @@ class ClassLoaderNameEnvironment impleme
                 return null;
             }
             ByteArrayOutputStream bos = new ByteArrayOutputStream();
-            byte[] b = new byte[2048];
+            byte[] b = new byte[4096];
             for (;;) {
                 int n = is.read(b);
                 if (n <= 0) {
@@ -180,6 +173,7 @@ class ClassLoaderNameEnvironment impleme
                 }
                 bos.write(b, 0, n);
             }
+            is.close();
             byte[] classBytes = bos.toByteArray();
             
             ClassFileReader classFileReader = new ClassFileReader(classBytes, className.toCharArray(), true);

Modified: tuscany/maven-plugins/trunk/maven-eclipse-compiler/src/main/java/org/apache/tuscany/maven/compiler/osgi/BundleResolver.java
URL: http://svn.apache.org/viewvc/tuscany/maven-plugins/trunk/maven-eclipse-compiler/src/main/java/org/apache/tuscany/maven/compiler/osgi/BundleResolver.java?rev=930529&r1=930528&r2=930529&view=diff
==============================================================================
--- tuscany/maven-plugins/trunk/maven-eclipse-compiler/src/main/java/org/apache/tuscany/maven/compiler/osgi/BundleResolver.java (original)
+++ tuscany/maven-plugins/trunk/maven-eclipse-compiler/src/main/java/org/apache/tuscany/maven/compiler/osgi/BundleResolver.java Sat Apr  3 15:14:18 2010
@@ -32,7 +32,6 @@ import java.util.Arrays;
 import java.util.Dictionary;
 import java.util.HashMap;
 import java.util.HashSet;
-import java.util.Iterator;
 import java.util.LinkedHashSet;
 import java.util.List;
 import java.util.Map;
@@ -159,11 +158,10 @@ public class BundleResolver {
     }
 
     private Properties manifestToProperties(Attributes d) {
-        Iterator iter = d.keySet().iterator();
         Properties result = new Properties();
-        while (iter.hasNext()) {
-            Attributes.Name key = (Attributes.Name)iter.next();
-            result.put(key.toString(), d.get(key));
+        for(Map.Entry<Object, Object> e: d.entrySet()) {
+            Attributes.Name key = (Attributes.Name)e.getKey();
+            result.put(key.toString(), e.getValue());
         }
         return result;
     }