summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--container-core/src/main/java/com/yahoo/container/core/config/BundleLoader.java1
-rw-r--r--container-core/src/main/java/com/yahoo/osgi/OsgiImpl.java4
-rw-r--r--jdisc_core/src/main/java/com/yahoo/jdisc/core/BundleCollisionHook.java3
-rw-r--r--jdisc_core/src/main/java/com/yahoo/jdisc/core/FelixFramework.java6
4 files changed, 13 insertions, 1 deletions
diff --git a/container-core/src/main/java/com/yahoo/container/core/config/BundleLoader.java b/container-core/src/main/java/com/yahoo/container/core/config/BundleLoader.java
index 18886d2e5a9..9115a51b486 100644
--- a/container-core/src/main/java/com/yahoo/container/core/config/BundleLoader.java
+++ b/container-core/src/main/java/com/yahoo/container/core/config/BundleLoader.java
@@ -174,6 +174,7 @@ public class BundleLoader {
public synchronized Set<Bundle> use(List<FileReference> bundles) {
Set<Bundle> bundlesToUninstall = retainOnly(bundles);
osgi.allowDuplicateBundles(bundlesToUninstall);
+ log.info(() -> bundlesToUninstall.isEmpty() ? "Adding bundles to allowed duplicates: " + bundlesToUninstall : "");
install(bundles);
startBundles();
diff --git a/container-core/src/main/java/com/yahoo/osgi/OsgiImpl.java b/container-core/src/main/java/com/yahoo/osgi/OsgiImpl.java
index 5fa0e65463a..2a308cf1ffd 100644
--- a/container-core/src/main/java/com/yahoo/osgi/OsgiImpl.java
+++ b/container-core/src/main/java/com/yahoo/osgi/OsgiImpl.java
@@ -11,12 +11,14 @@ import org.osgi.framework.launch.Framework;
import java.util.Collection;
import java.util.List;
+import java.util.logging.Logger;
/**
* @author Tony Vaagenes
* @author bratseth
*/
public class OsgiImpl implements Osgi {
+ private static Logger log = Logger.getLogger(OsgiImpl.class.getName());
private final OsgiFramework jdiscOsgi;
@@ -36,6 +38,7 @@ public class OsgiImpl implements Osgi {
alwaysCurrentBundle = firstNonFrameworkBundle(initialBundles);
if (alwaysCurrentBundle == null)
throw new IllegalStateException("The initial bundles only contained the framework bundle!");
+ log.info("Using " + alwaysCurrentBundle + " to lookup current bundles.");
}
@Override
@@ -111,6 +114,7 @@ public class OsgiImpl implements Osgi {
* @return the bundle match having the highest version, or null if there was no matches
*/
public Bundle getBundle(ComponentSpecification id) {
+ log.fine(() -> "Getting bundle for component " + id + ". Set of current bundles: " + getCurrentBundles());
Bundle highestMatch = null;
for (Bundle bundle : getCurrentBundles()) {
assert bundle.getSymbolicName() != null : "ensureHasBundleSymbolicName not called during installation";
diff --git a/jdisc_core/src/main/java/com/yahoo/jdisc/core/BundleCollisionHook.java b/jdisc_core/src/main/java/com/yahoo/jdisc/core/BundleCollisionHook.java
index 58ad5df9b0d..ae1c81195ce 100644
--- a/jdisc_core/src/main/java/com/yahoo/jdisc/core/BundleCollisionHook.java
+++ b/jdisc_core/src/main/java/com/yahoo/jdisc/core/BundleCollisionHook.java
@@ -15,6 +15,7 @@ import java.util.HashSet;
import java.util.Map;
import java.util.Objects;
import java.util.Set;
+import java.util.logging.Logger;
/**
* A bundle {@link CollisionHook} that contains a set of bundles that are allowed to collide with
@@ -26,6 +27,7 @@ import java.util.Set;
* @author gjoranv
*/
public class BundleCollisionHook implements CollisionHook, EventHook, FindHook {
+ private static Logger log = Logger.getLogger(BundleCollisionHook.class.getName());
private ServiceRegistration<?> registration;
private Map<Bundle, BsnVersion> allowedDuplicates = new HashMap<>(5);
@@ -105,6 +107,7 @@ public class BundleCollisionHook implements CollisionHook, EventHook, FindHook {
}
}
}
+ log.info("Hiding bundles from bundle '" + context.getBundle() + "': " + bundlesToHide);
bundles.removeAll(bundlesToHide);
}
diff --git a/jdisc_core/src/main/java/com/yahoo/jdisc/core/FelixFramework.java b/jdisc_core/src/main/java/com/yahoo/jdisc/core/FelixFramework.java
index eb829d3b273..c14e513fb98 100644
--- a/jdisc_core/src/main/java/com/yahoo/jdisc/core/FelixFramework.java
+++ b/jdisc_core/src/main/java/com/yahoo/jdisc/core/FelixFramework.java
@@ -158,7 +158,11 @@ public class FelixFramework implements OsgiFramework {
@Override
public List<Bundle> getBundles(Bundle requestingBundle) {
- return Arrays.asList(requestingBundle.getBundleContext().getBundles());
+ log.fine(() -> "All bundles: " + bundles());
+ log.fine(() -> "Getting visible bundles for bundle " + requestingBundle);
+ List<Bundle> visibleBundles = Arrays.asList(requestingBundle.getBundleContext().getBundles());
+ log.fine(() -> "Visible bundles: " + visibleBundles);
+ return visibleBundles;
}
public void allowDuplicateBundles(Collection<Bundle> bundles) {