Package com.morpheusdata.views
Class HandlebarsRenderer
java.lang.Object
com.morpheusdata.views.HandlebarsRenderer
- All Implemented Interfaces:
Renderer<com.github.jknack.handlebars.Handlebars>
public class HandlebarsRenderer
extends Object
implements Renderer<com.github.jknack.handlebars.Handlebars>
HandlebarsRenderer implements the Renderer interface.
It uses a Dynamic template loader and Handlebars engine to render templates.
-
Constructor Summary
ConstructorsConstructorDescriptionHandlebarsRenderer(com.github.jknack.handlebars.Handlebars overrideEngine) HandlebarsRenderer(ClassLoader classLoader) HandlebarsRenderer(String prefix) HandlebarsRenderer(String prefix, ClassLoader classLoader) -
Method Summary
Modifier and TypeMethodDescriptionvoidaddTemplateLoader(ClassLoader classLoader) Add a child first class loadercom.github.jknack.handlebars.HandlebarsThe implementation of the actual engine to be used in this rendererIterable<com.github.jknack.handlebars.io.TemplateLoader>Get a list of all template loadersvoidregisterAssetHelper(String pluginName) Creates an {{asset}} helper tag that outputs the plugin specific relative url for assets stored in the /src/assets e.g.voidregisterI18nHelper(Plugin plugin, MorpheusContext morpheus) voidregisterNonceHelper(MorpheusWebRequestService requestService) voidremoveTemplateLoader(ClassLoader classLoader) Remove a class loaderGiven a template and a model, returns a TemplateResponserenderTemplate(String location, ViewModel<?> model) Given a template location and a model, returns a TemplateResponse
-
Constructor Details
-
HandlebarsRenderer
public HandlebarsRenderer() -
HandlebarsRenderer
-
HandlebarsRenderer
-
HandlebarsRenderer
-
HandlebarsRenderer
public HandlebarsRenderer(com.github.jknack.handlebars.Handlebars overrideEngine)
-
-
Method Details
-
addTemplateLoader
Add a child first class loader- Specified by:
addTemplateLoaderin interfaceRenderer<com.github.jknack.handlebars.Handlebars>- Parameters:
classLoader- plugin class loader
-
removeTemplateLoader
Remove a class loader- Specified by:
removeTemplateLoaderin interfaceRenderer<com.github.jknack.handlebars.Handlebars>- Parameters:
classLoader- plugin class loader
-
getTemplateLoaders
Get a list of all template loaders- Specified by:
getTemplateLoadersin interfaceRenderer<com.github.jknack.handlebars.Handlebars>- Returns:
- list of template loaders
-
render
Description copied from interface:RendererGiven a template and a model, returns a TemplateResponse -
renderTemplate
Description copied from interface:RendererGiven a template location and a model, returns a TemplateResponse- Specified by:
renderTemplatein interfaceRenderer<com.github.jknack.handlebars.Handlebars>- Parameters:
location- Location where the engine can find the template.model- ViewModel to be passed in with the template- Returns:
- TemplateResponse
-
getEngine
public com.github.jknack.handlebars.Handlebars getEngine()Description copied from interface:RendererThe implementation of the actual engine to be used in this renderer -
registerAssetHelper
Creates an {{asset}} helper tag that outputs the plugin specific relative url for assets stored in the /src/assets e.g.<link href="{{asset "/custom.css"}}" />- Parameters:
pluginName- name of the plugin- See Also:
-
registerNonceHelper
-
registerI18nHelper
-