if (this.renderFunction == null) { SimpleBindings bindings = new SimpleBindings(); bindings.putAll(model); model.put("renderingContext", context); html = engine.eval(template, bindings);
if (this.renderFunction == null) { SimpleBindings bindings = new SimpleBindings(); bindings.putAll(model); model.put("renderingContext", context); html = engine.eval(template, bindings);
if (this.renderFunction == null) { SimpleBindings bindings = new SimpleBindings(); bindings.putAll(model); model.put("renderingContext", context); html = engine.eval(template, bindings);
public Object execute(Map<String,Object> variables) { bindings.putAll(variables); try { scriptEngine.getContext().setBindings(bindings,ScriptContext.ENGINE_SCOPE); return compiledScript.eval(); } catch (ScriptException e) { throw new RuntimeException(e); } finally { variables.keySet().forEach(bindings::remove); } }
private void scriptCustomization(final List<String> customizers, final String ext, final Map<String, Object> customBindings) { if (customizers == null || customizers.isEmpty()) { return; } final ScriptEngine engine = new ScriptEngineManager().getEngineByExtension(ext); if (engine == null) { throw new IllegalStateException("No engine for " + ext + ". Maybe add the JSR223 implementation as plugin dependency."); } for (final String js : customizers) { try { final SimpleBindings bindings = new SimpleBindings(); bindings.put("project", project); engine.eval(new StringReader(js), bindings); bindings.putAll(customBindings); } catch (final ScriptException e) { throw new IllegalStateException(e.getMessage(), e); } } }
binding.putAll(variables);
@Override public PatternFormatter[] getFormatters(final LogEvent event) { final SimpleBindings bindings = new SimpleBindings(); bindings.putAll(configuration.getProperties()); bindings.put("substitutor", configuration.getStrSubstitutor()); bindings.put("logEvent", event); final Object object = configuration.getScriptManager().execute(script.getName(), bindings); if (object == null) { return defaultFormatters; } final PatternFormatter[] patternFormatter = formatterMap.get(object.toString()); return patternFormatter == null ? defaultFormatters : patternFormatter; }
@Override public Result filter(final LogEvent event) { final SimpleBindings bindings = new SimpleBindings(); bindings.put("logEvent", event); bindings.putAll(configuration.getProperties()); bindings.put("substitutor", configuration.getStrSubstitutor()); final Object object = configuration.getScriptManager().execute(script.getName(), bindings); return object == null || !Boolean.TRUE.equals(object) ? onMismatch : onMatch; }
public ScriptExecutor(Collection<Pair<String, String>> libraries, String scriptName, String scriptCode, Map<String,Object> globalObjects) { scriptEngine = (NashornScriptEngine)new NashornScriptEngineFactory().getScriptEngine(); bindings = new SimpleBindings(); bindings.putAll(globalObjects); scriptEngine.setBindings(bindings, ScriptContext.ENGINE_SCOPE); libraries.forEach(p->{ bindings.put(NASHORN_SCRIPT_FILE_NAME, p.getKey()); try { scriptEngine.eval(p.getValue()); } catch (ScriptException e) { throw new RuntimeException(e); } }); try { bindings.put(NASHORN_SCRIPT_FILE_NAME, scriptName); compiledScript = scriptEngine.compile(scriptCode); } catch (ScriptException e) { throw new RuntimeException(e); } }
protected Object _runScript(ScriptFile script, Map<String, Object> args) throws ScriptException { SimpleBindings bindings = new SimpleBindings(); if (args != null) { bindings.putAll(args);
@Override public Result filter(final Logger logger, final Level level, final Marker marker, final Message msg, final Throwable t) { final SimpleBindings bindings = new SimpleBindings(); bindings.put("logger", logger); bindings.put("level", level); bindings.put("marker", marker); bindings.put("message", msg); bindings.put("parameters", null); bindings.put("throwable", t); bindings.putAll(configuration.getProperties()); bindings.put("substitutor", configuration.getStrSubstitutor()); final Object object = configuration.getScriptManager().execute(script.getName(), bindings); return object == null || !Boolean.TRUE.equals(object) ? onMismatch : onMatch; }
@Override public Result filter(final Logger logger, final Level level, final Marker marker, final String msg, final Object... params) { final SimpleBindings bindings = new SimpleBindings(); bindings.put("logger", logger); bindings.put("level", level); bindings.put("marker", marker); bindings.put("message", new SimpleMessage(msg)); bindings.put("parameters", params); bindings.put("throwable", null); bindings.putAll(configuration.getProperties()); bindings.put("substitutor", configuration.getStrSubstitutor()); final Object object = configuration.getScriptManager().execute(script.getName(), bindings); return object == null || !Boolean.TRUE.equals(object) ? onMismatch : onMatch; }
/** * Executes the script * * @param baseDir * @param candidates * @return */ @SuppressWarnings("unchecked") public List<PathWithAttributes> selectFilesToDelete(final Path basePath, final List<PathWithAttributes> candidates) { final SimpleBindings bindings = new SimpleBindings(); bindings.put("basePath", basePath); bindings.put("pathList", candidates); bindings.putAll(configuration.getProperties()); bindings.put("configuration", configuration); bindings.put("substitutor", configuration.getStrSubstitutor()); bindings.put("statusLogger", LOGGER); final Object object = configuration.getScriptManager().execute(script.getName(), bindings); return (List<PathWithAttributes>) object; }
@Override public Result filter(final Logger logger, final Level level, final Marker marker, final Object msg, final Throwable t) { final SimpleBindings bindings = new SimpleBindings(); bindings.put("logger", logger); bindings.put("level", level); bindings.put("marker", marker); bindings.put("message", msg instanceof String ? new SimpleMessage((String)msg) : new ObjectMessage(msg)); bindings.put("parameters", null); bindings.put("throwable", t); bindings.putAll(configuration.getProperties()); bindings.put("substitutor", configuration.getStrSubstitutor()); final Object object = configuration.getScriptManager().execute(script.getName(), bindings); return object == null || !Boolean.TRUE.equals(object) ? onMismatch : onMatch; }