Package com.github.jknack.handlebars.io
Class CompositeTemplateLoader
- java.lang.Object
-
- com.github.jknack.handlebars.io.CompositeTemplateLoader
-
- All Implemented Interfaces:
TemplateLoader
public class CompositeTemplateLoader extends java.lang.Object implements TemplateLoader
Combine two or more
TemplateLoaderas a singleTemplateLoader.TemplateLoaders are executed in the order they are provided.Execution is as follows:
- If a
TemplateLoaderis able to resolve aTemplateSource, thatTemplateSourceis considered the response. - If a
TemplateLoaderthrows aIOExceptionexception the nextTemplateLoaderin the chain will be used.
- Since:
- 1.0.0
-
-
Field Summary
-
Fields inherited from interface com.github.jknack.handlebars.io.TemplateLoader
DEFAULT_PREFIX, DEFAULT_SUFFIX
-
-
Constructor Summary
Constructors Constructor Description CompositeTemplateLoader(TemplateLoader... loaders)Creates a newCompositeTemplateLoader.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.nio.charset.CharsetgetCharset()java.lang.Iterable<TemplateLoader>getDelegates()Returns the delegates template loaders.java.lang.StringgetPrefix()java.lang.StringgetSuffix()java.lang.Stringresolve(java.lang.String location)Resolve a relative location to an absolute location.voidsetCharset(java.nio.charset.Charset charset)Set the default charset.voidsetPrefix(java.lang.String prefix)Set the prefix that gets prepended to view names when building a URI.voidsetSuffix(java.lang.String suffix)Set the suffix that gets appended to view names when building a URI.TemplateSourcesourceAt(java.lang.String location)Get a template source from location.
-
-
-
Constructor Detail
-
CompositeTemplateLoader
public CompositeTemplateLoader(TemplateLoader... loaders)
Creates a newCompositeTemplateLoader.- Parameters:
loaders- The template loader chain. At least two loaders must be provided.
-
-
Method Detail
-
sourceAt
public TemplateSource sourceAt(java.lang.String location) throws java.io.IOException
Description copied from interface:TemplateLoaderGet a template source from location.- Specified by:
sourceAtin interfaceTemplateLoader- Parameters:
location- The location of the template source. Required.- Returns:
- A new template source.
- Throws:
java.io.IOException- If the template's source can't be resolved.
-
resolve
public java.lang.String resolve(java.lang.String location)
Description copied from interface:TemplateLoaderResolve a relative location to an absolute location.- Specified by:
resolvein interfaceTemplateLoader- Parameters:
location- The candidate location.- Returns:
- Resolve the uri to an absolute location.
-
getPrefix
public java.lang.String getPrefix()
- Specified by:
getPrefixin interfaceTemplateLoader- Returns:
- The prefix that gets prepended to view names when building a URI.
-
getSuffix
public java.lang.String getSuffix()
- Specified by:
getSuffixin interfaceTemplateLoader- Returns:
- The suffix that gets appended to view names when building a URI.
-
setPrefix
public void setPrefix(java.lang.String prefix)
Description copied from interface:TemplateLoaderSet the prefix that gets prepended to view names when building a URI.- Specified by:
setPrefixin interfaceTemplateLoader- Parameters:
prefix- The prefix that gets prepended to view names when building a URI.
-
setSuffix
public void setSuffix(java.lang.String suffix)
Description copied from interface:TemplateLoaderSet the suffix that gets appended to view names when building a URI.- Specified by:
setSuffixin interfaceTemplateLoader- Parameters:
suffix- The suffix that gets appended to view names when building a URI.
-
setCharset
public void setCharset(java.nio.charset.Charset charset)
Description copied from interface:TemplateLoaderSet the default charset.- Specified by:
setCharsetin interfaceTemplateLoader- Parameters:
charset- Charset.
-
getCharset
public java.nio.charset.Charset getCharset()
- Specified by:
getCharsetin interfaceTemplateLoader- Returns:
- Charset.
-
getDelegates
public java.lang.Iterable<TemplateLoader> getDelegates()
Returns the delegates template loaders.- Returns:
- The delegates template loaders.
-
-