From 0ac2f6315660ef5e0b9cf9b247abc558015518fc Mon Sep 17 00:00:00 2001 From: Mathieu Baudier Date: Tue, 4 Dec 2012 15:38:51 +0000 Subject: [PATCH] Commented experiment with starting bundle in separate thread. git-svn-id: https://svn.argeo.org/commons/trunk@5893 4cfe0d0a-d680-48aa-b62c-e0a02a3f76cc --- .../spring/ApplicationContextTracker.java | 22 ++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) diff --git a/base/runtime/org.argeo.eclipse.ui/src/main/java/org/argeo/eclipse/spring/ApplicationContextTracker.java b/base/runtime/org.argeo.eclipse.ui/src/main/java/org/argeo/eclipse/spring/ApplicationContextTracker.java index c31b9dded..070c70826 100644 --- a/base/runtime/org.argeo.eclipse.ui/src/main/java/org/argeo/eclipse/spring/ApplicationContextTracker.java +++ b/base/runtime/org.argeo.eclipse.ui/src/main/java/org/argeo/eclipse/spring/ApplicationContextTracker.java @@ -107,20 +107,32 @@ class ApplicationContextTracker { return getApplicationContext(contributorBundle); } - static ApplicationContext getApplicationContext(Bundle contributorBundle) { + static ApplicationContext getApplicationContext( + final Bundle contributorBundle) { if (log.isTraceEnabled()) log.trace("Get application context for bundle " + contributorBundle); // Start if not yet started (also if in STARTING state, may be lazy) if (contributorBundle.getState() != Bundle.ACTIVE) { + if (log.isTraceEnabled()) + log.trace("Starting bundle: " + + contributorBundle.getSymbolicName()); + // Thread startBundle = new Thread("Start bundle " + // + contributorBundle.getSymbolicName()) { + // public void run() { try { - if (log.isTraceEnabled()) - log.trace("Starting bundle: " - + contributorBundle.getSymbolicName()); contributorBundle.start(); } catch (BundleException e) { - e.printStackTrace(); + log.error("Cannot start bundle " + contributorBundle, e); } + // } + // }; + // startBundle.start(); + // try { + // startBundle.join(10 * 1000l); + // } catch (InterruptedException e) { + // // silent + // } } final ApplicationContextTracker applicationContextTracker = new ApplicationContextTracker( -- 2.30.2