Class DefaultDataTemplateEngine

  • All Implemented Interfaces:
    TemplateEngine

    public final class DefaultDataTemplateEngine
    extends java.lang.Object
    implements TemplateEngine
    Creates a template engine that always injects default values into the data model.

    Default values can be overridden per/template by passing in a different value in the data model when rendering templates.

     
     TemplateEngine myEngine = createMyTemplateEngine();
     TemplateEngine wrappedEngine = DefaultDataTemplateEngine.builder()
             .delegate(myEngine)
             .put("foo", "baz")
             .put("hello", true)
             .build();
     assert(wrappedEngine.renderString("{{ foo }}") == "baz");
     
     
    • Constructor Detail

      • DefaultDataTemplateEngine

        public DefaultDataTemplateEngine​(java.util.Map<java.lang.String,​java.lang.Object> defaultContext,
                                         TemplateEngine delegate)
    • Method Detail

      • write

        public void write​(java.lang.String templatePath,
                          java.io.Writer out,
                          java.util.Map<java.lang.String,​java.lang.Object> dataModel)
        Description copied from interface: TemplateEngine
        Writes a template to the given writer.
        Specified by:
        write in interface TemplateEngine
        Parameters:
        templatePath - Loaded template to render.
        out - Writer to write to.
        dataModel - Data model to apply to the template.