Author: thomas.diesler(a)jboss.com
Date: 2009-09-15 10:36:06 -0400 (Tue, 15 Sep 2009)
New Revision: 93538
Modified:
projects/jboss-osgi/projects/bundles/common/trunk/src/main/java/org/jboss/osgi/common/internal/SystemDeployerService.java
Log:
Only resolve bundles that are marked as autoStart
Modified:
projects/jboss-osgi/projects/bundles/common/trunk/src/main/java/org/jboss/osgi/common/internal/SystemDeployerService.java
===================================================================
---
projects/jboss-osgi/projects/bundles/common/trunk/src/main/java/org/jboss/osgi/common/internal/SystemDeployerService.java 2009-09-15
14:34:53 UTC (rev 93537)
+++
projects/jboss-osgi/projects/bundles/common/trunk/src/main/java/org/jboss/osgi/common/internal/SystemDeployerService.java 2009-09-15
14:36:06 UTC (rev 93538)
@@ -24,7 +24,9 @@
//$Id$
import java.net.URL;
+import java.util.ArrayList;
import java.util.HashMap;
+import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
@@ -68,7 +70,9 @@
{
DeploymentRegistryService registry = getDeploymentRegistry();
+ List<Bundle> resolvableBundles = new ArrayList<Bundle>();
Map<BundleDeployment, Bundle> bundleMap = new HashMap<BundleDeployment,
Bundle>();
+
for (BundleDeployment dep : depArr)
{
try
@@ -78,7 +82,10 @@
log.log(LogService.LOG_INFO, "Installed: " + bundle);
registerManagedBundle(bundle);
+
bundleMap.put(dep, bundle);
+ if (dep.isAutoStart())
+ resolvableBundles.add(bundle);
registry.registerBundleDeployment(dep);
}
@@ -90,10 +97,12 @@
// Resolve the installed bundles through the PackageAdmin
ServiceReference packageAdminRef =
context.getServiceReference(PackageAdmin.class.getName());
- if (packageAdminRef != null)
+ if (packageAdminRef != null && resolvableBundles.isEmpty() == false)
{
PackageAdmin packageAdmin = (PackageAdmin)context.getService(packageAdminRef);
- packageAdmin.resolveBundles(null);
+ Bundle[] resolvableBundleArr = new Bundle[resolvableBundles.size()];
+ resolvableBundles.toArray(resolvableBundleArr);
+ packageAdmin.resolveBundles(resolvableBundleArr);
}
// Start the installed bundles
Show replies by date