You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@aries.apache.org by mn...@apache.org on 2010/07/02 09:40:42 UTC

svn commit: r959892 - in /incubator/aries/trunk/application/application-management/src/main/java/org/apache/aries/application/management/impl: AriesApplicationImpl.java AriesApplicationManagerImpl.java

Author: mnuttall
Date: Fri Jul  2 07:40:42 2010
New Revision: 959892

URL: http://svn.apache.org/viewvc?rev=959892&view=rev
Log:
ARIES-344: BundleConverter interface returns one-use-only inputstream

Modified:
    incubator/aries/trunk/application/application-management/src/main/java/org/apache/aries/application/management/impl/AriesApplicationImpl.java
    incubator/aries/trunk/application/application-management/src/main/java/org/apache/aries/application/management/impl/AriesApplicationManagerImpl.java

Modified: incubator/aries/trunk/application/application-management/src/main/java/org/apache/aries/application/management/impl/AriesApplicationImpl.java
URL: http://svn.apache.org/viewvc/incubator/aries/trunk/application/application-management/src/main/java/org/apache/aries/application/management/impl/AriesApplicationImpl.java?rev=959892&r1=959891&r2=959892&view=diff
==============================================================================
--- incubator/aries/trunk/application/application-management/src/main/java/org/apache/aries/application/management/impl/AriesApplicationImpl.java (original)
+++ incubator/aries/trunk/application/application-management/src/main/java/org/apache/aries/application/management/impl/AriesApplicationImpl.java Fri Jul  2 07:40:42 2010
@@ -35,6 +35,7 @@ import org.apache.aries.application.Appl
 import org.apache.aries.application.Content;
 import org.apache.aries.application.DeploymentMetadata;
 import org.apache.aries.application.management.AriesApplication;
+import org.apache.aries.application.management.BundleConversion;
 import org.apache.aries.application.management.BundleInfo;
 import org.apache.aries.application.management.LocalPlatform;
 import org.apache.aries.application.utils.AppConstants;
@@ -52,7 +53,7 @@ public class AriesApplicationImpl implem
   private LocalPlatform _localPlatform;
   
   // Placeholders for information we'll need for store()
-  private Map<String, InputStream> _modifiedBundles = null;
+  private Map<String, BundleConversion> _modifiedBundles = null;
   
   public AriesApplicationImpl(ApplicationMetadata meta, Set<BundleInfo> bundleInfo,
       LocalPlatform lp) {
@@ -88,11 +89,11 @@ public class AriesApplicationImpl implem
     _deploymentMetadata = dm;
   }
 
-  public Map<String, InputStream> getModifiedBundles() {
+  public Map<String, BundleConversion> getModifiedBundles() {
     return _modifiedBundles;
   }
 
-  public void setModifiedBundles (Map<String, InputStream> modifiedBundles) {
+  public void setModifiedBundles (Map<String, BundleConversion> modifiedBundles) {
     _modifiedBundles = modifiedBundles;
   }
   
@@ -177,10 +178,10 @@ public class AriesApplicationImpl implem
 
     // Write the migrated bundles out
     if (_modifiedBundles != null) { 
-      for (Map.Entry<String, InputStream> modifiedBundle : _modifiedBundles.entrySet()) {
+      for (Map.Entry<String, BundleConversion> modifiedBundle : _modifiedBundles.entrySet()) {
         try { 
           out = IOUtils.getOutputStream(dir, modifiedBundle.getKey());
-          IOUtils.copy(modifiedBundle.getValue(), out);
+          IOUtils.copy(modifiedBundle.getValue().getInputStream(), out);
         } finally { 
           IOUtils.close(out);
         }

Modified: incubator/aries/trunk/application/application-management/src/main/java/org/apache/aries/application/management/impl/AriesApplicationManagerImpl.java
URL: http://svn.apache.org/viewvc/incubator/aries/trunk/application/application-management/src/main/java/org/apache/aries/application/management/impl/AriesApplicationManagerImpl.java?rev=959892&r1=959891&r2=959892&view=diff
==============================================================================
--- incubator/aries/trunk/application/application-management/src/main/java/org/apache/aries/application/management/impl/AriesApplicationManagerImpl.java (original)
+++ incubator/aries/trunk/application/application-management/src/main/java/org/apache/aries/application/management/impl/AriesApplicationManagerImpl.java Fri Jul  2 07:40:42 2010
@@ -46,6 +46,7 @@ import org.apache.aries.application.mana
 import org.apache.aries.application.management.AriesApplicationListener;
 import org.apache.aries.application.management.AriesApplicationManager;
 import org.apache.aries.application.management.AriesApplicationResolver;
+import org.apache.aries.application.management.BundleConversion;
 import org.apache.aries.application.management.BundleConverter;
 import org.apache.aries.application.management.BundleInfo;
 import org.apache.aries.application.management.ConversionException;
@@ -61,7 +62,6 @@ import org.apache.aries.application.util
 import org.apache.aries.application.utils.manifest.BundleManifest;
 import org.apache.aries.application.utils.manifest.ManifestDefaultsInjector;
 import org.apache.aries.application.utils.manifest.ManifestProcessor;
-import org.osgi.framework.Bundle;
 import org.osgi.framework.BundleException;
 import org.osgi.framework.ServiceException;
 import org.slf4j.Logger;
@@ -110,7 +110,7 @@ public class AriesApplicationManagerImpl
   public AriesApplication createApplication(IDirectory ebaFile) throws ManagementException {
     ApplicationMetadata applicationMetadata = null;
     DeploymentMetadata deploymentMetadata = null;
-    Map<String, InputStream> modifiedBundles = new HashMap<String, InputStream>();
+    Map<String, BundleConversion> modifiedBundles = new HashMap<String, BundleConversion>();
     AriesApplicationImpl application = null;
     
     try { 
@@ -149,7 +149,7 @@ public class AriesApplicationManagerImpl
             throw new ManagementException (MessageUtil.getMessage("APPMANAGEMENT0003E", f.getName(), ebaFile.getName()));
           } else { 
             // We have a jar that needs converting to a bundle, or a war to migrate to a WAB
-            InputStream convertedBinary = null;
+            BundleConversion convertedBinary = null;
             Iterator<BundleConverter> converters = _bundleConverters.iterator();
             List<ConversionException> conversionExceptions = Collections.emptyList();
             while (converters.hasNext() && convertedBinary == null) {