public GroovyResult execute(final GroovyResult result, final String script, final Map<String, Object> variables) { if (script == null) { return result; } final Script groovyObject = compileGroovy(result, script, true); if (groovyObject == null) { return result; } return execute(result, groovyObject, variables); }
/** * @return the valueScript */ Script getValueScript() { if (valueScript == null && StringUtils.isBlank(this.valueConfig) == false) { String scr = this.valueConfig.trim(); if (scr.startsWith("=") == true) { scr = "return " + scr.substring(1); } this.valueScript = new GroovyExecutor().compileGroovy(scr, false); } return valueScript; }
public String executeTemplate(final String template, final Map<String, Object> variables) { securityChecks(template); return executeTemplate(new SimpleTemplateEngine(), template, variables); }
public GroovyResult execute(final Script groovyScript) { return execute(groovyScript, null); }
void recalculate() { if (accountRecordsExist == true) { // Nothing to do. return; } final Script groovyScript = config.getValueScript(); if (groovyScript == null) { // Nothing to do. return; } amount = BigDecimal.ZERO; final Map<String, Object> vars = new HashMap<String, Object>(); BusinessAssessment.putBusinessAssessmentRows(vars, businessAssessment); final GroovyResult result = new GroovyExecutor().execute(groovyScript, vars); final Object rval = result.getResult(); if (rval instanceof BigDecimal) { amount = (BigDecimal)rval; } else if (rval instanceof Number) { amount = new BigDecimal(String.valueOf(rval)).setScale(getScale(), RoundingMode.HALF_UP); } }
/** * @param script * @param bindScriptResult If true then "scriptResult" from type GroovyResult is binded. * @return */ public Script compileGroovy(final String script, final boolean bindScriptResult) { return compileGroovy(null, script, bindScriptResult); }
public String executeTemplate(final TemplateEngine templateEngine, final String template, final Map<String, Object> variables) { securityChecks(template); if (template == null) { return null; } try { final Template templateObject = templateEngine.createTemplate(template); final Writable writable = templateObject.make(variables); final StringWriter writer = new StringWriter(); writable.writeTo(writer); writer.flush(); if (log.isDebugEnabled() == true) { log.debug(writer.toString()); } return writer.toString(); } catch (final CompilationFailedException ex) { log.error(ex.getMessage() + " while executing template: " + template, ex); } catch (final FileNotFoundException ex) { log.error(ex.getMessage() + " while executing template: " + template, ex); } catch (final ClassNotFoundException ex) { log.error(ex.getMessage() + " while executing template: " + template, ex); } catch (final IOException ex) { log.error(ex.getMessage() + " while executing template: " + template, ex); } return null; }
/** * @param template * @see GroovyExecutor#executeTemplate(String, Map) */ public String executeTemplate(final String template) { final String content = replaceIncludes(template).replaceAll("#HURZ1#", "\\\\").replaceAll("#HURZ2#", "\\$"); // see replaceIncludes return groovyExecutor.executeTemplate(content, variables); }
public GroovyEngine(ConfigurationService configurationService, final Map<String, Object> variables, final Locale locale, final TimeZone timeZone) { if (locale != null) { this.locale = locale; } else { this.locale = ConfigXml.getInstance().getDefaultLocale(); } if (timeZone != null) { this.timeZone = timeZone; } else { this.timeZone = Configuration.getInstance().getDefaultTimeZone(); } this.variables = variables; this.variables.put("pf", this); this.groovyExecutor = new GroovyExecutor(); this.configurationService = configurationService; }
public GroovyResult execute(final Script groovyScript, final Map<String, Object> variables) { return execute((GroovyResult) null, groovyScript, variables); }
/** * The Groovy script should return true or false. Inside the script the variables "userGroupCache", "user" and "value" are given as bind * variables. * @param id * @param category * @param groovyScript */ public UserGroovyRight(final UserRightId id, final UserRightCategory category, final String groovyScript) { super(id, category); this.groovyScript = groovyExecutor.compileGroovy(groovyScript, false); }
securityChecks(script); final GroovyClassLoader gcl = new GroovyClassLoader()
public GroovyResult execute(final String script, final Map<String, Object> variables) { if (script == null) { return new GroovyResult(); } final Script groovyObject = compileGroovy(script, true); if (groovyObject == null) { return new GroovyResult(); } return execute(groovyObject, variables); }
public GroovyResult execute(final ScriptDO script, final List<ScriptParameter> parameters) { hasLoggedInUserSelectAccess(script, true); final ReportGeneratorList reportGeneratorList = new ReportGeneratorList(); final Map<String, Object> scriptVariables = new HashMap<String, Object>(); addScriptVariables(scriptVariables); scriptVariables.put("reportList", reportGeneratorList); if (parameters != null) { for (final ScriptParameter param : parameters) { scriptVariables.put(param.getParameterName(), param.getValue()); } } if (script.getFile() != null) { final Map<String, Object> scriptVars = new HashMap<String, Object>(); scriptVariables.put("script", scriptVars); scriptVars.put("file", script.getFile()); scriptVars.put("filename", script.getFilename()); } scriptVariables.put("i18n", new I18n()); String scriptContent = script.getScriptAsString(); if (scriptContent.contains("import org.projectforge.export")) { // Package was renamed in version 5.2 and 6.13: scriptContent = scriptContent.replace("import org.projectforge.export", "import org.projectforge.export.*\nimport org.projectforge.business.excel"); } groovyResult = groovyExecutor.execute(new GroovyResult(), scriptContent, scriptVariables); return groovyResult; }
scriptVariables.put("reportList", reportGeneratorList); if (StringUtils.isNotBlank(getReportScriptingStorage().getGroovyScript()) == true) { groovyResult = groovyExecutor.execute(new GroovyResult(), getReportScriptingStorage().getGroovyScript(), scriptVariables); if (groovyResult.hasException() == true) {