- @Deprecated
- public boolean startBundles(List<String> bundlesToStart) {
- if (bundlesToStart.size() == 0)
- return true;
-
- // used to monitor ACTIVE states
- List<Bundle> startedBundles = new ArrayList<Bundle>();
- // used to log the bundles not found
- List<String> notFoundBundles = new ArrayList<String>(bundlesToStart);
-
- Bundle[] bundles = bundleContext.getBundles();
- long startBegin = System.currentTimeMillis();
- for (int i = 0; i < bundles.length; i++) {
- Bundle bundle = bundles[i];
- String symbolicName = bundle.getSymbolicName();
- if (bundlesToStart.contains(symbolicName))
- try {
- try {
- bundle.start();
- if (debug)
- debug("Bundle " + symbolicName + " started");
- } catch (Exception e) {
- OsgiBootUtils.warn("Start of bundle " + symbolicName + " failed because of " + e
- + ", maybe bundle is not yet resolved," + " waiting and trying again.");
- waitForBundleResolvedOrActive(startBegin, bundle);
- bundle.start();
- startedBundles.add(bundle);
- }
- notFoundBundles.remove(symbolicName);
- } catch (Exception e) {
- OsgiBootUtils.warn("Bundle " + symbolicName + " cannot be started: " + e.getMessage());
- if (debug)
- e.printStackTrace();
- // was found even if start failed
- notFoundBundles.remove(symbolicName);
- }
- }
-
- for (int i = 0; i < notFoundBundles.size(); i++)
- OsgiBootUtils.warn("Bundle '" + notFoundBundles.get(i) + "' not started because it was not found.");
-
- // monitors that all bundles are started
- long beginMonitor = System.currentTimeMillis();
- boolean allStarted = !(startedBundles.size() > 0);
- List<String> notStarted = new ArrayList<String>();
- while (!allStarted && (System.currentTimeMillis() - beginMonitor) < defaultTimeout) {
- notStarted = new ArrayList<String>();
- allStarted = true;
- for (int i = 0; i < startedBundles.size(); i++) {
- Bundle bundle = (Bundle) startedBundles.get(i);
- // TODO check behaviour of lazs bundles
- if (bundle.getState() != Bundle.ACTIVE) {
- allStarted = false;
- notStarted.add(bundle.getSymbolicName());
- }
- }
- try {
- Thread.sleep(100);
- } catch (InterruptedException e) {
- // silent
- }
- }
- long duration = System.currentTimeMillis() - beginMonitor;
-
- if (!allStarted)
- for (int i = 0; i < notStarted.size(); i++)
- OsgiBootUtils.warn("Bundle '" + notStarted.get(i) + "' not ACTIVE after " + (duration / 1000) + "s");
-
- return allStarted;
- }
+ // @Deprecated
+ // public boolean startBundles(List<String> bundlesToStart) {
+ // if (bundlesToStart.size() == 0)
+ // return true;
+ //
+ // // used to monitor ACTIVE states
+ // List<Bundle> startedBundles = new ArrayList<Bundle>();
+ // // used to log the bundles not found
+ // List<String> notFoundBundles = new ArrayList<String>(bundlesToStart);
+ //
+ // Bundle[] bundles = bundleContext.getBundles();
+ // long startBegin = System.currentTimeMillis();
+ // for (int i = 0; i < bundles.length; i++) {
+ // Bundle bundle = bundles[i];
+ // String symbolicName = bundle.getSymbolicName();
+ // if (bundlesToStart.contains(symbolicName))
+ // try {
+ // try {
+ // bundle.start();
+ // if (OsgiBootUtils.debug)
+ // debug("Bundle " + symbolicName + " started");
+ // } catch (Exception e) {
+ // OsgiBootUtils.warn("Start of bundle " + symbolicName + " failed because
+ // of " + e
+ // + ", maybe bundle is not yet resolved," + " waiting and trying again.");
+ // waitForBundleResolvedOrActive(startBegin, bundle);
+ // bundle.start();
+ // startedBundles.add(bundle);
+ // }
+ // notFoundBundles.remove(symbolicName);
+ // } catch (Exception e) {
+ // OsgiBootUtils.warn("Bundle " + symbolicName + " cannot be started: " +
+ // e.getMessage());
+ // if (OsgiBootUtils.debug)
+ // e.printStackTrace();
+ // // was found even if start failed
+ // notFoundBundles.remove(symbolicName);
+ // }
+ // }
+ //
+ // for (int i = 0; i < notFoundBundles.size(); i++)
+ // OsgiBootUtils.warn("Bundle '" + notFoundBundles.get(i) + "' not started
+ // because it was not found.");
+ //
+ // // monitors that all bundles are started
+ // long beginMonitor = System.currentTimeMillis();
+ // boolean allStarted = !(startedBundles.size() > 0);
+ // List<String> notStarted = new ArrayList<String>();
+ // while (!allStarted && (System.currentTimeMillis() - beginMonitor) <
+ // defaultTimeout) {
+ // notStarted = new ArrayList<String>();
+ // allStarted = true;
+ // for (int i = 0; i < startedBundles.size(); i++) {
+ // Bundle bundle = (Bundle) startedBundles.get(i);
+ // // TODO check behaviour of lazs bundles
+ // if (bundle.getState() != Bundle.ACTIVE) {
+ // allStarted = false;
+ // notStarted.add(bundle.getSymbolicName());
+ // }
+ // }
+ // try {
+ // Thread.sleep(100);
+ // } catch (InterruptedException e) {
+ // // silent
+ // }
+ // }
+ // long duration = System.currentTimeMillis() - beginMonitor;
+ //
+ // if (!allStarted)
+ // for (int i = 0; i < notStarted.size(); i++)
+ // OsgiBootUtils.warn("Bundle '" + notStarted.get(i) + "' not ACTIVE after "
+ // + (duration / 1000) + "s");
+ //
+ // return allStarted;
+ // }