diff options
Diffstat (limited to 'src/main/java/org/jenkinsci/plugins/activemq/ActiveMqPlugin.java')
-rw-r--r-- | src/main/java/org/jenkinsci/plugins/activemq/ActiveMqPlugin.java | 21 |
1 files changed, 19 insertions, 2 deletions
diff --git a/src/main/java/org/jenkinsci/plugins/activemq/ActiveMqPlugin.java b/src/main/java/org/jenkinsci/plugins/activemq/ActiveMqPlugin.java index b82443a..cf1c2e9 100644 --- a/src/main/java/org/jenkinsci/plugins/activemq/ActiveMqPlugin.java +++ b/src/main/java/org/jenkinsci/plugins/activemq/ActiveMqPlugin.java @@ -12,6 +12,9 @@ import org.slf4j.Logger; import javax.annotation.Nonnull; import javax.jms.JMSException; +import javax.script.ScriptEngine; +import javax.script.ScriptEngineFactory; +import javax.script.ScriptEngineManager; import java.net.URISyntaxException; import java.util.Map; @@ -20,14 +23,17 @@ import static org.slf4j.LoggerFactory.getLogger; @Extension public class ActiveMqPlugin extends Plugin implements ActiveMqClient.BuildRequestListener /*implements ReconfigurableDescribable<ActiveMqPlugin>*/ { -// public static final String DISPLAY_NAME = "ActiveMQ Plugin Display Name"; - private static final Logger log = getLogger(ActiveMqPlugin.class); private transient ActiveMqClient client; + private transient ScriptEngineManager scriptEngineManager; @Override public void start() throws Exception { + // Use null as the class loader to get only the script engined defined by the JDK. With out it only the + // Groovy engine was exposed. + scriptEngineManager = new ScriptEngineManager(null); + reconfigure(); } @@ -116,4 +122,15 @@ public class ActiveMqPlugin extends Plugin implements ActiveMqClient.BuildReques return "ActiveMQ cause"; } } + + /** + * Used by other parts of the plugin. + */ + public ScriptEngine createEngine() { + log.info("ActiveMqPlugin.createEngine"); + for (ScriptEngineFactory scriptEngineFactory : scriptEngineManager.getEngineFactories()) { + log.info("scriptEngineFactory = " + scriptEngineFactory); + } + return scriptEngineManager.getEngineByName("JavaScript"); + } } |