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);