You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@aries.apache.org by jw...@apache.org on 2012/06/25 03:18:20 UTC
svn commit: r1353375 - in
/aries/trunk/subsystem/subsystem-core/src/main/java/org/apache/aries/subsystem/core/internal:
Activator.java BundleResource.java
Author: jwross
Date: Mon Jun 25 01:18:19 2012
New Revision: 1353375
URL: http://svn.apache.org/viewvc?rev=1353375&view=rev
Log:
ARIES-825: Multiple changes.
(1) Added support for bundle jars that don't contain the manifest as the first entry.
(2) Fixed issue in activator preventing proper restarts.
Modified:
aries/trunk/subsystem/subsystem-core/src/main/java/org/apache/aries/subsystem/core/internal/Activator.java
aries/trunk/subsystem/subsystem-core/src/main/java/org/apache/aries/subsystem/core/internal/BundleResource.java
Modified: aries/trunk/subsystem/subsystem-core/src/main/java/org/apache/aries/subsystem/core/internal/Activator.java
URL: http://svn.apache.org/viewvc/aries/trunk/subsystem/subsystem-core/src/main/java/org/apache/aries/subsystem/core/internal/Activator.java?rev=1353375&r1=1353374&r2=1353375&view=diff
==============================================================================
--- aries/trunk/subsystem/subsystem-core/src/main/java/org/apache/aries/subsystem/core/internal/Activator.java (original)
+++ aries/trunk/subsystem/subsystem-core/src/main/java/org/apache/aries/subsystem/core/internal/Activator.java Mon Jun 25 01:18:19 2012
@@ -202,7 +202,7 @@ public class Activator implements Bundle
private boolean isActive() {
synchronized (Activator.class) {
- return instance != null;
+ return instance != null && subsystems != null;
}
}
Modified: aries/trunk/subsystem/subsystem-core/src/main/java/org/apache/aries/subsystem/core/internal/BundleResource.java
URL: http://svn.apache.org/viewvc/aries/trunk/subsystem/subsystem-core/src/main/java/org/apache/aries/subsystem/core/internal/BundleResource.java?rev=1353375&r1=1353374&r2=1353375&view=diff
==============================================================================
--- aries/trunk/subsystem/subsystem-core/src/main/java/org/apache/aries/subsystem/core/internal/BundleResource.java (original)
+++ aries/trunk/subsystem/subsystem-core/src/main/java/org/apache/aries/subsystem/core/internal/BundleResource.java Mon Jun 25 01:18:19 2012
@@ -18,8 +18,6 @@ import java.io.InputStream;
import java.net.URL;
import java.util.ArrayList;
import java.util.List;
-import java.util.jar.JarInputStream;
-import java.util.jar.Manifest;
import org.apache.aries.subsystem.core.archive.BundleManifest;
import org.apache.aries.subsystem.core.archive.BundleSymbolicNameHeader;
@@ -52,19 +50,7 @@ public class BundleResource implements R
private BundleResource(URL content) throws IOException {
this.content = content;
- JarInputStream jis = new JarInputStream(content.openStream());
- try {
- Manifest manifest = jis.getManifest();
- if (manifest == null)
- throw new IllegalArgumentException("The jar file contained no manifest");
- this.manifest = new BundleManifest(manifest);
- }
- finally {
- try {
- jis.close();
- }
- catch (IOException e) {}
- }
+ manifest = new BundleManifest(org.apache.aries.util.manifest.BundleManifest.fromBundle(content.openStream()).getRawManifest());
ExportPackageHeader eph = (ExportPackageHeader)manifest.getHeader(ExportPackageHeader.NAME);
if (eph != null)
capabilities.addAll(eph.toCapabilities(this));