X-Git-Url: http://git.argeo.org/?a=blobdiff_plain;f=runtime%2Forg.argeo.slc.launcher%2Fsrc%2Fmain%2Fjava%2Forg%2Fargeo%2Fslc%2Fcli%2FSlcMain.java;h=08d4d9db02f45cb219f0743585d89a6bb4b54d6b;hb=49d1ccd3b9f4d55d90de5e956a44bdbe83f600ef;hp=04caaab9eef388d907b755c4ba3779a8aafa6eba;hpb=61dd39a53c7635693b520e7e26583a5bde50430e;p=gpl%2Fargeo-slc.git diff --git a/runtime/org.argeo.slc.launcher/src/main/java/org/argeo/slc/cli/SlcMain.java b/runtime/org.argeo.slc.launcher/src/main/java/org/argeo/slc/cli/SlcMain.java index 04caaab9e..08d4d9db0 100644 --- a/runtime/org.argeo.slc.launcher/src/main/java/org/argeo/slc/cli/SlcMain.java +++ b/runtime/org.argeo.slc.launcher/src/main/java/org/argeo/slc/cli/SlcMain.java @@ -25,7 +25,7 @@ import org.springframework.context.support.FileSystemXmlApplicationContext; public class SlcMain { public enum Mode { - single, agent + single, agent, osgi } private static Log log = null; @@ -187,6 +187,20 @@ public class SlcMain { applicationContext.start(); log.info("SLC Agent context started."); } + // OSGi + else if (mode.equals(Mode.osgi)) { + final ConfigurableApplicationContext applicationContext; + if (runtimeStr == null) { + applicationContext = new ClassPathXmlApplicationContext( + DEFAULT_AGENT_CONTEXT); + } else { + applicationContext = new FileSystemXmlApplicationContext( + runtimeStr); + } + applicationContext.registerShutdownHook(); + applicationContext.start(); + log.info("SLC Agent context started."); + } } public static void printUsage() {