List<BundleTracker> btList = BundleTrackerFactory.getBundleTrackerList(bundleScope); BundleTrackerFactory.unregisterAndCloseBundleTracker(bundleScope);
private synchronized void openTracker(BundleTrackerCustomizer btc, CompositeBundle cb, String bundleScope, int stateMask) { // let's process each of the bundle in the CompositeBundle BundleContext compositeBundleContext = cb.getCompositeFramework().getBundleContext(); String bundleId = cb.getSymbolicName()+"/"+cb.getVersion(); if (alreadyRecursedContexts.putIfAbsent(bundleId, bundleId) == null) { // let's track each of the bundle in the CompositeBundle BundleTracker bt = new InternalRecursiveBundleTracker(compositeBundleContext, stateMask, customizer, true); bt.open(); BundleTrackerFactory.registerBundleTracker(bundleScope, bt); } } }