]> git.argeo.org Git - gpl/argeo-slc.git/blob - org.argeo.slc.example/src/main/java/org/argeo/slc/example/Activator.java
Merge from 0.11.mbaudier (OSGi libraries)
[gpl/argeo-slc.git] / org.argeo.slc.example / src / main / java / org / argeo / slc / example / Activator.java
1 package org.argeo.slc.example;
2
3 import java.net.URL;
4 import java.util.Properties;
5
6 import org.apache.commons.logging.Log;
7 import org.apache.commons.logging.LogFactory;
8 import org.argeo.slc.cli.DefaultSlcRuntime;
9 import org.argeo.slc.detached.SpringStaticRefProvider;
10 import org.argeo.slc.detached.StaticRefProvider;
11 import org.osgi.framework.BundleActivator;
12 import org.osgi.framework.BundleContext;
13 import org.springframework.beans.factory.support.BeanDefinitionRegistry;
14 import org.springframework.beans.factory.xml.XmlBeanDefinitionReader;
15 import org.springframework.context.support.AbstractApplicationContext;
16 import org.springframework.context.support.GenericApplicationContext;
17 import org.springframework.core.io.UrlResource;
18
19 public class Activator implements BundleActivator {
20 //private final static String BOOTSTRAP_LOG4J_CONFIG = "org/argeo/slc/example/log4j.properties";
21 private static Log log = LogFactory.getLog(Activator.class);
22
23 public void start(BundleContext context) throws Exception {
24 initLogging(null);
25 System.out.println("(stdout) Starting SLC Example bundle XXX...");
26 log.info("Starting SLC Example bundle...");
27
28
29 // Creates application context with this class class loader
30 ClassLoader classLoader = getClass().getClassLoader();
31 Thread cur = Thread.currentThread();
32 ClassLoader save = cur.getContextClassLoader();
33 cur.setContextClassLoader(classLoader);
34
35 try {
36 DefaultSlcRuntime runtime = new DefaultSlcRuntime();
37 runtime
38 .executeScript(
39 null,
40 "/home/mbaudier/dev/src/slc/org.argeo.slc.example/src/main/slc/root/Category1/SubCategory2/build.xml",
41 null, new Properties(), null, null);
42
43 } catch (Exception e) {
44 e.printStackTrace();
45 throw new Exception("Could not initialize application context");
46 } finally {
47 cur.setContextClassLoader(save);
48 }
49
50
51 }
52
53 public void stop(BundleContext context) throws Exception {
54 System.out.println("(stdout) Stop SLC Example bundle...");
55 }
56
57 private static void initLogging(Properties userProperties) {
58 //System.setProperty("log4j.defaultInitOverride", "true");
59 System.setProperty("log4j.rootLogger", "WARN, console");
60 System.setProperty("log4j.logger.org.argeo", "INFO");
61 System.setProperty("log4j.appender.console", "org.apache.log4j.ConsoleAppender");
62 System.setProperty("log4j.appender.console.layout", "org.apache.log4j.PatternLayout");
63 System.setProperty("log4j.appender.console.layout.ConversionPattern", "%-5p %d{ISO8601} %m - %c%n");
64
65 // // Add log4j user properties to System properties
66 // for (Object obj : userProperties.keySet()) {
67 // String key = obj.toString();
68 // if (key.startsWith("log4j.")) {
69 // System.setProperty(key, userProperties.getProperty(key));
70 // }
71 // }
72 // Log4jUtils.initLog4j(System.getProperty("log4j.configuration",
73 // "classpath:" + BOOTSTRAP_LOG4J_CONFIG));
74 log = LogFactory.getLog(Activator.class);
75
76 }
77
78 }