Class URLTemplateLoader

java.lang.Object
com.github.jknack.handlebars.io.AbstractTemplateLoader
com.github.jknack.handlebars.io.URLTemplateLoader
All Implemented Interfaces:
TemplateLoader
Direct Known Subclasses:
ClassPathTemplateLoader, FileTemplateLoader, ServletContextTemplateLoader

public abstract class URLTemplateLoader extends AbstractTemplateLoader

Strategy interface for loading resources (i.e class path or file system resources)

Templates prefix and suffix

A TemplateLoader provides two important properties:

  • prefix: useful for setting a default prefix where templates are stored.
  • suffix: useful for setting a default suffix or file extension for your templates. Default is: '.hbs'

Usage:

 TemplateLoader loader = new ClassPathTemplateLoader();
 loader.setPrefix("/templates");
 loader.setSuffix(".html");
 Handlebars handlebars = new Handlebars(loader);

 Template template = handlebars.compile("mytemplate");

 System.out.println(template.apply("Handlebars.java"));
 

The template loader resolve mytemplate to /templates/mytemplate.html and load it.

Since:
0.1.0
  • Constructor Details

    • URLTemplateLoader

      public URLTemplateLoader()
  • Method Details

    • sourceAt

      public TemplateSource sourceAt(String uri) throws IOException
      Description copied from interface: TemplateLoader
      Get a template source from location.
      Parameters:
      uri - The location of the template source. Required.
      Returns:
      A new template source.
      Throws:
      IOException - If the template's source can't be resolved.