protected internal virtual IScriptEngine GetPaScriptEngine(string language, IProcessApplicationReference pa) { try { IProcessApplicationInterface processApplication = pa.ProcessApplication; IProcessApplicationInterface rawObject = processApplication.RawObject; if (rawObject is AbstractProcessApplication) { AbstractProcessApplication abstractProcessApplication = (AbstractProcessApplication)rawObject; return(abstractProcessApplication.GetScriptEngineForName(language, enableScriptEngineCaching)); } return(null); } catch (ProcessApplicationUnavailableException e) { throw new ProcessEngineException("Process Application is unavailable.", e); } catch (System.Exception ex) { throw ex; } }