You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by an...@apache.org on 2009/04/05 09:13:04 UTC

svn commit: r762051 - /tuscany/java/sca/modules/contribution-java/src/main/java/org/apache/tuscany/sca/contribution/java/impl/ContributionHelper.java

Author: antelder
Date: Sun Apr  5 07:13:04 2009
New Revision: 762051

URL: http://svn.apache.org/viewvc?rev=762051&view=rev
Log:
Update for zip and folders and fix for nested jars in sub folders

Modified:
    tuscany/java/sca/modules/contribution-java/src/main/java/org/apache/tuscany/sca/contribution/java/impl/ContributionHelper.java

Modified: tuscany/java/sca/modules/contribution-java/src/main/java/org/apache/tuscany/sca/contribution/java/impl/ContributionHelper.java
URL: http://svn.apache.org/viewvc/tuscany/java/sca/modules/contribution-java/src/main/java/org/apache/tuscany/sca/contribution/java/impl/ContributionHelper.java?rev=762051&r1=762050&r2=762051&view=diff
==============================================================================
--- tuscany/java/sca/modules/contribution-java/src/main/java/org/apache/tuscany/sca/contribution/java/impl/ContributionHelper.java (original)
+++ tuscany/java/sca/modules/contribution-java/src/main/java/org/apache/tuscany/sca/contribution/java/impl/ContributionHelper.java Sun Apr  5 07:13:04 2009
@@ -18,12 +18,17 @@
 
     public static List<URL> getNestedJarUrls(final Contribution contribution) throws IOException {
         List<URL> urls = new ArrayList<URL>();
-        for (Artifact a : contribution.getArtifacts()) {
-            if (a.getLocation().endsWith(".jar")) {
-                if (contribution.getLocation().endsWith(".zip")) {
-                    urls.add(createTempJar(a, contribution));
-                } else {
-                    urls.add(new URL(a.getLocation()));
+        boolean isZipContribution = contribution.getLocation().endsWith(".zip");
+        URI uri = URI.create(contribution.getLocation());
+        boolean isFolderContribution = !isZipContribution && uri.getScheme().equals("file") && new File(uri).isDirectory();
+        if (isZipContribution || isFolderContribution) {
+            for (Artifact a : contribution.getArtifacts()) {
+                if (a.getLocation().endsWith(".jar")) {
+                    if (isZipContribution) {
+                        urls.add(createTempJar(a, contribution));
+                    } else {
+                        urls.add(new URL(a.getLocation()));
+                    }
                 }
             }
         }
@@ -42,7 +47,7 @@
             while (zipEntry != null) {
                 if (artifact.getLocation().endsWith(zipEntry.getName())) {
 
-                    String tempName = "tmp." + artifact.getURI().substring(0, artifact.getURI().length() - 3);
+                    String tempName = ("tmp." + artifact.getURI().substring(0, artifact.getURI().length() - 3)).replace('/', '.');
                     File tempFile = File.createTempFile(tempName, ".jar");
                     tempFile.deleteOnExit();
                     fileOutputStream = new FileOutputStream(tempFile);