public final class Engine extends Object implements RendererRegistry
The template engine - THIS IS WHERE YOU START LOOKING.
Usually this is the only class you need calling
transform(String, Map). Like this
Engine engine = new Engine(); String transformed = engine.transform(input, model);
You have to provide the template input written in the template language and a model from String to Object. Maybe like this
String input = "${name}";
Map<String, Object> model = new HashMap<String, Object>();
model.put("name", "Minimal Template Engine");
Engine engine = new Engine();
String transformed = engine.transform(input, model);
assert (transformed.equals("Minimal Template Engine"));
where input contains the template and model the
model.
Use setUseCompilation(boolean) to switch on compilation mode. This
will compile the template into Java byte code before execution. Especially
when the template is used often this will speed up the execution by a factor
between 2 and 10. However, each compiled template results in a new class
definition and a new globally cached singleton instance of it.
This class is thread safe.
ErrorHandler,
Tool,
Renderer,
NamedRenderer,
ModelAdaptor,
ProcessListener| Constructor and Description |
|---|
Engine()
Creates a new engine having
${ and } as start
and end strings for expressions. |
public static final String VERSION
public Engine()
${ and } as start
and end strings for expressions.@Deprecated public static Engine createCachingEngine()
@Deprecated public static Engine createNonCachingEngine()
@Deprecated public static Engine createCompilingEngine()
@Deprecated public static Engine createDefaultEngine()
public static Engine createEngine()
public boolean variablesAvailable(Map<String,Object> model, String... vars)
public String transform(String template, Locale locale, String sourceName, Map<String,Object> model, ProcessListener processListener)
template - the template to expandlocale - the locale being passed into renderers in
TemplateContextsourceName - the name of the current template (if there is anything like
that)model - the model used to evaluate expressions inside the templatepublic String transform(String template, String sourceName, Map<String,Object> model, ProcessListener processListener)
public String transform(String template, Locale locale, String sourceName, Map<String,Object> model)
public String transform(String template, Map<String,Object> model, ProcessListener processListener)
public String transform(String template, Locale locale, Map<String,Object> model, ProcessListener processListener)
public String format(String pattern, Object... args)
String.format(String, Object...). All arguments will be
put into the model having their index starting from 1 as their name.pattern - the templateargs - any number of arguments@Deprecated public Set<String> getUsedVariables(String template)
getUsedVariableDescriptions(String) insteadpublic List<VariableDescription> getUsedVariableDescriptions(String template)
public List<ErrorEntry> getStaticErrors(String template)
public Engine registerNamedRenderer(NamedRenderer renderer)
registerNamedRenderer in interface RendererRegistrypublic Engine deregisterNamedRenderer(NamedRenderer renderer)
deregisterNamedRenderer in interface RendererRegistrypublic Collection<NamedRenderer> getCompatibleRenderers(Class<?> inputType)
getCompatibleRenderers in interface RendererRegistrypublic Collection<NamedRenderer> getAllNamedRenderers()
getAllNamedRenderers in interface RendererRegistrypublic NamedRenderer resolveNamedRenderer(String rendererName)
resolveNamedRenderer in interface RendererRegistrypublic Engine registerAnnotationProcessor(AnnotationProcessor<?> annotationProcessor)
public Engine deregisterAnnotationProcessor(AnnotationProcessor<?> annotationProcessor)
public <C> Engine registerRenderer(Class<C> clazz, Renderer<C> renderer)
registerRenderer in interface RendererRegistrypublic Engine deregisterRenderer(Class<?> clazz)
deregisterRenderer in interface RendererRegistrypublic <C> Renderer<C> resolveRendererForClass(Class<C> clazz)
resolveRendererForClass in interface RendererRegistrypublic void setEncoder(Encoder encoder)
public Encoder getEncoder()
public void setErrorHandler(ErrorHandler errorHandler)
public ErrorHandler getErrorHandler()
public String getExprStartToken()
public String getExprEndToken()
public void setExprStartToken(String exprStartToken)
public void setExprEndToken(String exprEndToken)
public void setExpansionSizeFactor(double expansionSizeFactor)
public double getExpansionSizeFactor()
public boolean isUseCompilation()
public void setUseCompilation(boolean useCompilation)
public void setModelAdaptor(ModelAdaptor modelAdaptor)
public ModelAdaptor getModelAdaptor()
@Deprecated public boolean isEnabledInterpretedTemplateCache()
@Deprecated public void setEnabledInterpretedTemplateCache(boolean enabledInterpretedTemplateCache)
public Template getTemplate(String template)
template - the template sourcepublic Template getTemplate(String template, String sourceName)
template - the template sourcesourceName - the template namepublic void setCompiler(TemplateCompiler compiler)
public TemplateCompiler getCompiler()
public OutputAppender getOutputAppender()
public void setOutputAppender(OutputAppender outputAppender)
Copyright © 2017. All rights reserved.