X-Git-Url: https://gerrit.simantics.org/r/gitweb?p=simantics%2Fplatform.git;a=blobdiff_plain;f=bundles%2Forg.simantics.scl.rest%2Fsrc%2Forg%2Fsimantics%2Fscl%2Frest%2FActivator.java;h=b7cf316893447fdd6a0994474372f2a57e68c279;hp=4f90e690089c91094484602f303ec1eb809eefaf;hb=5a916488e73ffb47b2899252b73f6d0a8d1d10e6;hpb=db00b51c6ab9c63883de134e669b5da5be0f1bd5 diff --git a/bundles/org.simantics.scl.rest/src/org/simantics/scl/rest/Activator.java b/bundles/org.simantics.scl.rest/src/org/simantics/scl/rest/Activator.java index 4f90e6900..b7cf31689 100644 --- a/bundles/org.simantics.scl.rest/src/org/simantics/scl/rest/Activator.java +++ b/bundles/org.simantics.scl.rest/src/org/simantics/scl/rest/Activator.java @@ -2,9 +2,15 @@ package org.simantics.scl.rest; import org.osgi.framework.BundleActivator; import org.osgi.framework.BundleContext; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; public class Activator implements BundleActivator { + public static final String START_SERVER = "org.simantics.scl.rest.startServer"; + + private static final Logger LOGGER = LoggerFactory.getLogger(Activator.class); + private static BundleContext context; static BundleContext getContext() { @@ -18,6 +24,15 @@ public class Activator implements BundleActivator { * org.osgi.framework.BundleActivator#start(org.osgi.framework.BundleContext) */ public void start(BundleContext bundleContext) throws Exception { + String onStartup = System.getProperty(START_SERVER); + if (onStartup != null && !onStartup.isEmpty()) { + try { + String[] tokenAndPort = onStartup.split("::"); + SCLRESTServer.start(tokenAndPort[0], Integer.parseInt(tokenAndPort[1])); + } catch (Exception e) { + LOGGER.error("Could not start server with value {}. It should be in the form of ::", onStartup, e); + } + } Activator.context = bundleContext; }