Bug 325746 - [ds] expensive manifest localization on startup
diff --git a/bundles/org.eclipse.equinox.ds/META-INF/MANIFEST.MF b/bundles/org.eclipse.equinox.ds/META-INF/MANIFEST.MF
index 98d9cfb..26e0455 100644
--- a/bundles/org.eclipse.equinox.ds/META-INF/MANIFEST.MF
+++ b/bundles/org.eclipse.equinox.ds/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@
Bundle-ManifestVersion: 2
Bundle-Name: Declarative Services
Bundle-SymbolicName: org.eclipse.equinox.ds
-Bundle-Version: 1.0.0.qualifier
+Bundle-Version: 1.0.1.qualifier
Bundle-Vendor: Eclipse
Bundle-Activator: org.eclipse.equinox.internal.ds.Activator
Bundle-Description: This bundle provides support for OSGi
diff --git a/bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/ds/Activator.java b/bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/ds/Activator.java
index 86f5edb..02d6861 100644
--- a/bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/ds/Activator.java
+++ b/bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/ds/Activator.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 1997-2007 by ProSyst Software GmbH
+ * Copyright (c) 1997-2010 by ProSyst Software GmbH
* http://www.prosyst.com
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -153,7 +153,7 @@
boolean hasHeaders = false;
Bundle[] allBundles = bc.getBundles();
for (int i = 0; i < allBundles.length; i++) {
- Dictionary allHeaders = allBundles[i].getHeaders();
+ Dictionary allHeaders = allBundles[i].getHeaders("");
if (allHeaders.get(ComponentConstants.SERVICE_COMPONENT) != null) {
hasHeaders = true;
break;
@@ -219,7 +219,7 @@
public void bundleChanged(BundleEvent event) {
if (event.getType() == BundleEvent.STARTING) {
- Dictionary allHeaders = event.getBundle().getHeaders();
+ Dictionary allHeaders = event.getBundle().getHeaders("");
if ((allHeaders.get(ComponentConstants.SERVICE_COMPONENT)) != null) {
// The bundle is holding components - activate scr
bc.removeBundleListener(this);
diff --git a/bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/ds/SCRManager.java b/bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/ds/SCRManager.java
index e3a6691..b1193f8 100644
--- a/bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/ds/SCRManager.java
+++ b/bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/ds/SCRManager.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 1997-2007 by ProSyst Software GmbH
+ * Copyright (c) 1997-2010 by ProSyst Software GmbH
* http://www.prosyst.com
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -471,7 +471,7 @@
}
}
- Dictionary allHeaders = bundle.getHeaders();
+ Dictionary allHeaders = bundle.getHeaders("");
if (!((allHeaders.get(ComponentConstants.SERVICE_COMPONENT)) != null)) {
// no component descriptions in this bundle
diff --git a/bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/ds/storage/file/FileStorage.java b/bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/ds/storage/file/FileStorage.java
index 4f57260..2a98c33 100644
--- a/bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/ds/storage/file/FileStorage.java
+++ b/bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/ds/storage/file/FileStorage.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 1997-2007 by ProSyst Software GmbH
+ * Copyright (c) 1997-2010 by ProSyst Software GmbH
* http://www.prosyst.com
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -222,7 +222,7 @@
}
private ManifestElement[] parseManifestHeader(Bundle bundle) {
- Dictionary headers = bundle.getHeaders();
+ Dictionary headers = bundle.getHeaders("");
String files = (String) headers.get(ComponentConstants.SERVICE_COMPONENT);
if (files == null)
return new ManifestElement[0];