Package org.joget.workflow.shark

Source Code of org.joget.workflow.shark.WorkflowScriptingManager

package org.joget.workflow.shark;

import org.enhydra.shark.api.client.wfmc.wapi.WMSessionHandle;
import org.enhydra.shark.api.internal.scripting.Evaluator;
import org.enhydra.shark.api.internal.working.CallbackUtilities;
import org.enhydra.shark.scripting.BshEvaluator;
import org.enhydra.shark.scripting.PythonEvaluator;
import org.enhydra.shark.scripting.StandardScriptingManager;

public class WorkflowScriptingManager extends StandardScriptingManager {

    public static final String PYTHON_SCRIPT = "text/pythonscript";
    public static final String JAVA_LANGUAGE_SCRIPT = "text/java";
    public static final String JAVA_SCRIPT = "text/javascript";
    private BshEvaluator bshEvaluator;
    private PythonEvaluator pythonEvaluator;
    private WorkflowJavaScriptEvaluator jsEvaluator;
    private CallbackUtilities cus;

    public void configure(CallbackUtilities cus) throws Exception {
        this.cus = cus;
        bshEvaluator = new BshEvaluator();
        bshEvaluator.configure(cus);
        pythonEvaluator = new PythonEvaluator();
        pythonEvaluator.configure(cus);
        jsEvaluator = new WorkflowJavaScriptEvaluator();
        jsEvaluator.configure(cus);
    }

    public Evaluator getEvaluator(WMSessionHandle shandle, String name) throws Exception {
        if (name == null) {
            return null;
        }
        Evaluator eval = null;
        if (name.equals(PYTHON_SCRIPT)) {
            eval = pythonEvaluator;
        } else if (name.equals(JAVA_LANGUAGE_SCRIPT)) {
            eval = bshEvaluator;
        } else if (name.equals(JAVA_SCRIPT)) {
            eval = jsEvaluator;
        }
        return eval;
    }
}
TOP

Related Classes of org.joget.workflow.shark.WorkflowScriptingManager

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.