From: Mathieu Baudier Date: Fri, 26 Sep 2008 14:40:50 +0000 (+0000) Subject: Centralize Spring initialization X-Git-Tag: argeo-slc-2.1.7~2552 X-Git-Url: http://git.argeo.org/?a=commitdiff_plain;h=e2b4fdec69b8764db232da8d3ad039549a2ffeab;p=gpl%2Fargeo-slc.git Centralize Spring initialization git-svn-id: https://svn.argeo.org/slc/trunk@1639 4cfe0d0a-d680-48aa-b62c-e0a02a3f76cc --- diff --git a/sandbox/argeo.slc.jemmytest/pom.xml b/sandbox/argeo.slc.jemmytest/pom.xml index a480695b1..1f41d1b8d 100644 --- a/sandbox/argeo.slc.jemmytest/pom.xml +++ b/sandbox/argeo.slc.jemmytest/pom.xml @@ -11,7 +11,7 @@ src/main/slc - slc + META-INF/slc **/* @@ -35,6 +35,9 @@ org.argeo.slc.jemmytest.* + + *,org.springframework.beans.factory.xml + @@ -88,12 +91,6 @@ 3.3.0-v20070530 - - org.springframework - spring-context - 2.0.8 - - diff --git a/sandbox/argeo.slc.jemmytest/src/main/java/org/argeo/slc/jemmytest/JemmyTestActivator.java b/sandbox/argeo.slc.jemmytest/src/main/java/org/argeo/slc/jemmytest/JemmyTestActivator.java index c8c0e357c..50b782d16 100644 --- a/sandbox/argeo.slc.jemmytest/src/main/java/org/argeo/slc/jemmytest/JemmyTestActivator.java +++ b/sandbox/argeo.slc.jemmytest/src/main/java/org/argeo/slc/jemmytest/JemmyTestActivator.java @@ -2,57 +2,22 @@ package org.argeo.slc.jemmytest; import java.util.Properties; +import org.argeo.slc.autoui.AbstractAutoActivator; import org.argeo.slc.autoui.AutoUiApplication; -import org.osgi.framework.BundleActivator; import org.osgi.framework.BundleContext; -import org.springframework.context.support.AbstractApplicationContext; -import org.springframework.context.support.ClassPathXmlApplicationContext; - -public class JemmyTestActivator implements BundleActivator { - private AbstractApplicationContext applicationContext; - - public void start(BundleContext context) throws Exception { - ClassLoader classLoader = getClass().getClassLoader(); - - Thread cur = Thread.currentThread(); - ClassLoader save = cur.getContextClassLoader(); - cur.setContextClassLoader(classLoader); - - try { - // FIXME: make it more generic - applicationContext = new ClassPathXmlApplicationContext( - "/slc/conf/applicationContext.xml"); - } catch (Exception e) { - e.printStackTrace(); - throw new Exception("Could not initialize application context"); - } finally { - cur.setContextClassLoader(save); - } - - // applicationContext = new GenericApplicationContext(); - // XmlBeanDefinitionReader xmlReader = new XmlBeanDefinitionReader( - // (BeanDefinitionRegistry) applicationContext); - // Bundle bundle = context.getBundle(); - // - // URL url = bundle - // .getResource("META-INF/slc/conf/applicationContext.xml"); - // if (url != null) { - // System.out.println("Loads application context from bundle " - // + bundle.getSymbolicName()); - // xmlReader.loadBeanDefinitions(new UrlResource(url)); - // } +public class JemmyTestActivator extends AbstractAutoActivator { + protected void startAutoBundle(BundleContext context) throws Exception { Properties properties = new Properties(); // AutoUiApplicationJemmy applicationJemmy = new // AutoUiApplicationJemmy(); - AutoUiApplicationJemmy applicationJemmy = (AutoUiApplicationJemmy) applicationContext - .getBean("jemmyTest"); + AutoUiApplicationJemmy applicationJemmy = (AutoUiApplicationJemmy) getStaticRef("jemmyTest"); context.registerService(AutoUiApplication.class.getName(), applicationJemmy, properties); stdOut("JemmyTest started"); } - public void stop(BundleContext context) throws Exception { + public void stopAutoBundle(BundleContext context) throws Exception { stdOut("JemmyTest stopped"); }