package org.jtwig.render.node.renderer; import org.jtwig.escape.EscapeEngine; import org.jtwig.model.tree.OutputNode; import org.jtwig.render.RenderRequest; import org.jtwig.render.expression.CalculateExpressionService; import org.jtwig.renderable.Renderable; import org.jtwig.renderable.impl.StringRenderable; public class OutputNodeRender implements NodeRender<OutputNode> { @Override public Renderable render(RenderRequest request, OutputNode node) { CalculateExpressionService calculateExpressionService = request.getEnvironment().getRenderEnvironment().getCalculateExpressionService(); Object calculate = calculateExpressionService.calculate(request, node.getExpression()); EscapeEngine escapeEngine = request.getRenderContext().getCurrent(EscapeEngine.class); return new StringRenderable(getString(request, calculate), escapeEngine); } private String getString(RenderRequest request, Object input) { return request.getEnvironment().getValueEnvironment().getStringConverter().convert(input); } }